# HG changeset patch # User Paul Boddie # Date 1481910333 -3600 # Node ID 4bd1e2112bb606ccf878053925342b6f3c8fb23d # Parent adff136b5f08778ac2dc1c5d4284b4094f52e856 Do not inadvertently create deferred references when testing for objects. diff -r adff136b5f08 -r 4bd1e2112bb6 inspector.py --- a/inspector.py Fri Dec 16 18:07:58 2016 +0100 +++ b/inspector.py Fri Dec 16 18:45:33 2016 +0100 @@ -497,9 +497,9 @@ # the storage of namespace-related information. class_name = self.get_object_path(n.name) - ref = self.get_object(class_name) + ref = self.get_object(class_name, defer=False) - if ref.static(): + if ref and ref.static(): raise InspectError("Multiple definitions for the same name are not permitted.", class_name, n) # Record bases for the class and retain the class name. @@ -586,9 +586,9 @@ # the storage of namespace-related information. function_name = self.get_object_path(name) - ref = self.get_object(function_name) + ref = self.get_object(function_name, defer=False) - if ref.static(): + if ref and ref.static(): raise InspectError("Multiple definitions for the same name are not permitted.", function_name, n) # Initialise argument and local records.