1.1 --- a/micropython/report.py Sat Jul 14 23:49:43 2012 +0200
1.2 +++ b/micropython/report.py Sun Jul 15 00:14:45 2012 +0200
1.3 @@ -346,16 +346,26 @@
1.4 def _attrcombined(self, name, node):
1.5 attrcombined = node._attrcombined and node._attrcombined.get(name) or []
1.6
1.7 - for attrnames in attrcombined:
1.8 - if attrnames:
1.9 - break
1.10 - else:
1.11 + # Since assigned values will not be shown, produce a sorted list of
1.12 + # distinct attribute name lists.
1.13 +
1.14 + all_attrnames = set()
1.15 + for usage in attrcombined:
1.16 + if usage:
1.17 + all_attrnames.add(tuple(usage.keys()))
1.18 +
1.19 + if not all_attrnames:
1.20 return False
1.21
1.22 + all_attrnames = list(all_attrnames)
1.23 + all_attrnames.sort()
1.24 +
1.25 + # Write the lists of attribute names.
1.26 +
1.27 self._name_start()
1.28 self.stream.write(name)
1.29 self._popup_start()
1.30 - for attrnames in attrcombined:
1.31 + for attrnames in all_attrnames:
1.32 self._attrnames(attrnames)
1.33 self._popup_end()
1.34 self._name_end()