# HG changeset patch # User Paul Boddie # Date 1489247003 -3600 # Node ID 7edcb1489c5857a1624cb77d5953c5bc0dd6ab96 # Parent 462903bad35ddbd788433330feaa0d186143432a Fixed resolution of local and undetermined name references for initialisers. diff -r 462903bad35d -r 7edcb1489c58 resolving.py --- a/resolving.py Sat Mar 11 01:04:19 2017 +0100 +++ b/resolving.py Sat Mar 11 16:43:23 2017 +0100 @@ -297,12 +297,12 @@ elif isinstance(name_ref, LocalNameRef): key = "%s.%s" % (path, name_ref.name) - origin = self.name_references.get(key) + ref = self.name_references.get(key) # Accesses that do not refer to known static objects # cannot be resolved, but they may be resolvable later. - if not origin: + if not ref: if not invocation: # Record the path used for tracking purposes @@ -313,17 +313,15 @@ continue - ref = self.get_resolved_object(origin) + ref = self.get_resolved_object(ref.get_origin()) if not ref: continue elif isinstance(name_ref, NameRef): key = "%s.%s" % (path, name_ref.name) - origin = self.name_references.get(key) - if not origin: - continue + ref = self.name_references.get(key) - ref = self.get_resolved_object(origin) + ref = ref and self.get_resolved_object(ref.get_origin()) if not ref: continue