From c79cfc7c79e56295311a9fab5b6a03ff44564df6 Mon Sep 17 00:00:00 2001 From: Manindra Moharana Date: Sat, 13 Jul 2013 02:11:28 +0530 Subject: [PATCH] resolve expression bug fix --- .../mode/experimental/ASTGenerator.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/pdex/src/processing/mode/experimental/ASTGenerator.java b/pdex/src/processing/mode/experimental/ASTGenerator.java index 573cc7a30..b07f1ec6b 100644 --- a/pdex/src/processing/mode/experimental/ASTGenerator.java +++ b/pdex/src/processing/mode/experimental/ASTGenerator.java @@ -609,8 +609,13 @@ public class ASTGenerator { return null; } System.out.println("MI, SN Type " + getNodeAsString(stp)); + ASTNode typeDec = findDeclaration2(stp.getName(),nearestNode); + if(typeDec == null){ + System.out.println(stp.getName() + " couldn't be found locally.."); + return new ClassMember(findClassIfExists(stp.getName().toString())); + } //scopeParent = definedIn3rdPartyClass(stp.getName().toString(), "THIS"); - return new ClassMember(findDeclaration2(stp.getName(),nearestNode)); + return new ClassMember(typeDec); } else { System.out.println("MI EXP.."+getNodeAsString(mi.getExpression())); // return null; @@ -639,7 +644,14 @@ public class ASTGenerator { } System.out.println("QN, SN Local Type " + getNodeAsString(stp)); //scopeParent = definedIn3rdPartyClass(stp.getName().toString(), "THIS"); - return new ClassMember(findDeclaration2(qn.getName(),nearestNode)); + ASTNode typeDec = findDeclaration2(stp.getName(),nearestNode); + if(typeDec == null){ + System.out.println(stp.getName() + " couldn't be found locally.."); + return new ClassMember(findClassIfExists(stp.getName().toString())); + } + //scopeParent = definedIn3rdPartyClass(stp.getName().toString(), "THIS"); + return new ClassMember(typeDec); + //return new ClassMember(findDeclaration2(qn.getName(),nearestNode)); } else { scopeParent = resolveExpression3rdParty(nearestNode, qn.getQualifier(), noCompare);