Index: Lib/test/test_pyclbr.py =================================================================== --- Lib/test/test_pyclbr.py (revision 69418) +++ Lib/test/test_pyclbr.py (working copy) @@ -10,6 +10,7 @@ StaticMethodType = type(staticmethod(lambda: None)) ClassMethodType = type(classmethod(lambda c: None)) +PropertyType = type(property()) # This next line triggers an error on old versions of pyclbr. @@ -69,6 +70,17 @@ if isinstance(obj, FunctionType): if not isinstance(classdict[name], StaticMethodType): return False + elif isinstance(obj, PropertyType): + try: + # Handles properties that return methods from parent + wrapped = obj.fget(oclass) + return ismethod(oclass, wrapped, wrapped.__name__) + except AttributeError: + # Dirty hack + if 'self' in obj.fget.func_code.co_varnames: + return True + else: + return False else: if not isinstance(obj, MethodType): return False