fix dis on new style classes #8310
diff --git a/Lib/dis.py b/Lib/dis.py
index edc210f..5aa09c9 100644
--- a/Lib/dis.py
+++ b/Lib/dis.py
@@ -10,6 +10,9 @@
"findlinestarts", "findlabels"] + _opcodes_all
del _opcodes_all
+_have_code = (types.MethodType, types.FunctionType, types.CodeType,
+ types.ClassType, type)
+
def dis(x=None):
"""Disassemble classes, methods, functions, or code.
@@ -29,10 +32,7 @@
items = x.__dict__.items()
items.sort()
for name, x1 in items:
- if isinstance(x1, (types.MethodType,
- types.FunctionType,
- types.CodeType,
- types.ClassType)):
+ if isinstance(x1, _have_code):
print "Disassembly of %s:" % name
try:
dis(x1)
diff --git a/Misc/NEWS b/Misc/NEWS
index 4cb76ad..0ee0c07 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -49,6 +49,8 @@
Library
-------
+- Issue #8310: Allow dis to examine new style classes.
+
- Issue #8257: The Decimal construct now accepts a float instance
directly, converting that float to a Decimal of equal value: