diff options
author | aclement <aclement> | 2006-05-05 08:29:41 +0000 |
---|---|---|
committer | aclement <aclement> | 2006-05-05 08:29:41 +0000 |
commit | 2ed766cd9f95b400c69db07eedde69035877113c (patch) | |
tree | bba08036055f474ba30ed3c260c6a8aed460a49c /org.aspectj.ajdt.core | |
parent | 6cc28740d01a06428037612b3d33bee5eeab7733 (diff) | |
download | aspectj-2ed766cd9f95b400c69db07eedde69035877113c.tar.gz aspectj-2ed766cd9f95b400c69db07eedde69035877113c.zip |
test for 136393: NPE on funky ITD ctor
Diffstat (limited to 'org.aspectj.ajdt.core')
-rw-r--r-- | org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/ast/InterTypeConstructorDeclaration.java | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/ast/InterTypeConstructorDeclaration.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/ast/InterTypeConstructorDeclaration.java index fec167383..ba043df9f 100644 --- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/ast/InterTypeConstructorDeclaration.java +++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/ast/InterTypeConstructorDeclaration.java @@ -180,7 +180,8 @@ public class InterTypeConstructorDeclaration extends InterTypeDeclaration { MethodBinding explicitConstructor = null; if (explicitConstructorCall != null) { explicitConstructor = explicitConstructorCall.binding; - if (explicitConstructor.alwaysNeedsAccessMethod()) { + // If it is null then we are going to report something else is wrong with this code! + if (explicitConstructor!=null && explicitConstructor.alwaysNeedsAccessMethod()) { explicitConstructor = explicitConstructor.getAccessMethod(true); } } @@ -305,13 +306,12 @@ public class InterTypeConstructorDeclaration extends InterTypeDeclaration { private AjAttribute makeAttribute(EclipseFactory world) { - if (explicitConstructorCall != null && !(explicitConstructorCall.binding instanceof ProblemMethodBinding)) { + if (explicitConstructorCall != null && (explicitConstructorCall.binding!=null) && !(explicitConstructorCall.binding instanceof ProblemMethodBinding)) { MethodBinding explicitConstructor = explicitConstructorCall.binding; if (explicitConstructor.alwaysNeedsAccessMethod()) { explicitConstructor = explicitConstructor.getAccessMethod(true); } - ((NewConstructorTypeMunger)munger).setExplicitConstructor( world.makeResolvedMember(explicitConstructor)); } else { |