diff --git a/ExprPrimaryNodes.py b/ExprPrimaryNodes.py index cea29170ba30fc0ab5b163c10937ae56902d5477..527c93e9a07cae62f8b51a9463f831cbeae84de5 100644 --- a/ExprPrimaryNodes.py +++ b/ExprPrimaryNodes.py @@ -5,6 +5,7 @@ import MemberNodes from TheTypeNode import TypeNode, TypeStruct from NameNode import NameNode, checkProtected from CodeGenUtils import p, pLabel, genMethodInvoke, importHelper, getCFlowLabel +from codeGenNodes import genNameNode # file containing smaller (lower level nodes) in the AST # nodes in this file: @@ -1138,6 +1139,10 @@ class MethodInvNode(ASTNode): self.code += self.primary.code else: # a name node if not hasattr(self.ID, "code"): + if not self.ID.prefixNodes: + cNameNode = genNameNode(self.typeName) + cNameNode.isThis = True + self.ID.prefixNodes.append(cNameNode) self.ID.codeGen() self.code += self.ID.code