diff options
author | aclement <aclement> | 2006-10-03 13:04:18 +0000 |
---|---|---|
committer | aclement <aclement> | 2006-10-03 13:04:18 +0000 |
commit | a67ec0d3c573b37b0d1bbc8b2400da430dfb2faa (patch) | |
tree | ffc759615c26f508a32f38fb639b976d097c6e61 /org.aspectj.ajdt.core | |
parent | af08e729f0ca9f49ca139f1099eb2dd197be6ce2 (diff) | |
download | aspectj-a67ec0d3c573b37b0d1bbc8b2400da430dfb2faa.tar.gz aspectj-a67ec0d3c573b37b0d1bbc8b2400da430dfb2faa.zip |
test and fix for 149071
Diffstat (limited to 'org.aspectj.ajdt.core')
-rw-r--r-- | org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/InterTypeFieldBinding.java | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/InterTypeFieldBinding.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/InterTypeFieldBinding.java index 19e04461e..fbcde4c71 100644 --- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/InterTypeFieldBinding.java +++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/InterTypeFieldBinding.java @@ -83,13 +83,19 @@ public class InterTypeFieldBinding extends FieldBinding { // answer true if the receiverType is the declaringClass // AND the invocationType and the declaringClass have a common enclosingType + // see pr149071 - it has caused me to comment out this block below - what + // is it trying to achieve? Possibly it should be using the scope.parentScope (the class scope of + // where the reference is being made) rather than the receiver type + // Is the receiverType an innertype of the declaring type? - boolean receiverTypeIsSameOrInsideDeclaringType = receiverType == declaringType; - ReferenceBinding typeToCheckNext = receiverType.enclosingType(); - while (!receiverTypeIsSameOrInsideDeclaringType && typeToCheckNext!=null) { - if (typeToCheckNext==declaringType) receiverTypeIsSameOrInsideDeclaringType=true; - } - if (!receiverTypeIsSameOrInsideDeclaringType) return false; +// boolean receiverTypeIsSameOrInsideDeclaringType = receiverType == declaringType; +// ReferenceBinding typeToCheckNext = receiverType.enclosingType(); +// while (!receiverTypeIsSameOrInsideDeclaringType && typeToCheckNext!=null) { +// if (typeToCheckNext==declaringType) receiverTypeIsSameOrInsideDeclaringType=true; +// } +// if (!receiverTypeIsSameOrInsideDeclaringType) return false; + + // the code above replaces this line: (pr118698) // if (receiverType != declaringType) return false; |