Bug 65688 - Compiler crash
Summary: Compiler crash
Status: RESOLVED DUPLICATE of bug 67774
Alias: None
Product: AspectJ
Classification: Tools
Component: Compiler (show other bugs)
Version: 1.2   Edit
Hardware: PC Windows XP
: P3 blocker (vote)
Target Milestone: 1.2.1   Edit
Assignee: Adrian Colyer CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-06-04 05:41 EDT by Hristo Stoyanov CLA
Modified: 2004-10-21 04:31 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Hristo Stoyanov CLA 2004-06-04 05:41:48 EDT
Hi-,
 I was trying to add a new constructor to the Point class like that:
----------------------------
public aspect PerstGeometry
{
	declare parents: com.vividsolutions.jts.geom.* implements AutoPersist;
	declare parents: com.vividsolutions.jts.geom.PrecisionModel.* 
implements AutoPersist;
	//public  PrecisionModel.Type.new (){}
	//public  Coordinate.new (){}
	public Point.new(){}
}
-----------------------------
and I got the following stack trace:
     [iajc] compiling C:\projects\<...some path...>\
PerstGeometry.aj
     [iajc]
     [iajc] weaver operating in reweavable mode.  Need to verify any required 
ty
pes exist.
     [iajc]
     [iajc] trouble in:
     [iajc] ABORT
     [iajc]
     [iajc] Exception thrown from AspectJ 1.2

     [iajc] This might be logged as a bug already -- find current bugs at
     [iajc]   http://bugs.eclipse.org/bugs/buglist.cgi?
product=AspectJ&component
=Compiler

     [iajc] Bugs for exceptions thrown have titles File:line from the top 
stack,

     [iajc] e.g., "SomeFile.java:243"

     [iajc] If you don't find the exception below in a bug, please add a new 
bug

     [iajc] at http://bugs.eclipse.org/bugs/enter_bug.cgi?product=AspectJ
     [iajc] To make the bug a priority, please include a test program
     [iajc] that can reproduce this exception.
     [iajc] null
     [iajc] java.lang.NullPointerException
     [iajc]     at org.aspectj.weaver.patterns.SignaturePattern.matches
(Signatur
ePattern.java:87)
     [iajc]     at org.aspectj.weaver.patterns.WithincodePointcut.match
(Withinco
dePointcut.java:42)
     [iajc]     at org.aspectj.weaver.patterns.NotPointcut.match
(NotPointcut.jav
a:45)
     [iajc]     at org.aspectj.weaver.patterns.AndPointcut.match
(AndPointcut.jav
a:42)
     [iajc]     at org.aspectj.weaver.patterns.AndPointcut.match
(AndPointcut.jav
a:42)
     [iajc]     at org.aspectj.weaver.patterns.AndPointcut.match
(AndPointcut.jav
a:42)
     [iajc]     at org.aspectj.weaver.patterns.AndPointcut.match
(AndPointcut.jav
a:42)
     [iajc]     at org.aspectj.weaver.ShadowMunger.match(ShadowMunger.java:62)
     [iajc]     at org.aspectj.weaver.Advice.match(Advice.java:91)
     [iajc]     at org.aspectj.weaver.bcel.BcelClassWeaver.match
(BcelClassWeaver
.java:1121)
     [iajc]     at org.aspectj.weaver.bcel.BcelClassWeaver.matchInit
(BcelClassWe
aver.java:895)
     [iajc]     at org.aspectj.weaver.bcel.BcelClassWeaver.match
(BcelClassWeaver
.java:793)
     [iajc]     at org.aspectj.weaver.bcel.BcelClassWeaver.weave
(BcelClassWeaver
.java:343)
     [iajc]     at org.aspectj.weaver.bcel.BcelClassWeaver.weave
(BcelClassWeaver
.java:80)
     [iajc]     at org.aspectj.weaver.bcel.BcelWeaver.weave
(BcelWeaver.java:724)

     [iajc]     at org.aspectj.weaver.bcel.BcelWeaver.weaveWithoutDump
(BcelWeave
r.java:689)
     [iajc]     at org.aspectj.weaver.bcel.BcelWeaver.weaveAndNotify
(BcelWeaver.
java:615)
     [iajc]     at org.aspectj.weaver.bcel.BcelWeaver.weave
(BcelWeaver.java:563)

     [iajc]     at org.aspectj.ajdt.internal.compiler.AjCompilerAdapter.weave
(Aj
CompilerAdapter.java:239)
     [iajc]     at 
org.aspectj.ajdt.internal.compiler.AjCompilerAdapter.afterCom
piling(AjCompilerAdapter.java:114)
     [iajc]     at org.eclipse.jdt.internal.compiler.Compiler.compile
(Compiler.j
ava:376)
     [iajc]     at 
org.aspectj.ajdt.internal.core.builder.AjBuildManager.perform
Compilation(AjBuildManager.java:601)
     [iajc]     at 
org.aspectj.ajdt.internal.core.builder.AjBuildManager.doBuild
(AjBuildManager.java:160)
     [iajc]     at 
org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBu
ild(AjBuildManager.java:94)
     [iajc]     at org.aspectj.ajdt.ajc.AjdtCommand.doCommand
(AjdtCommand.java:1
02)
     [iajc]     at org.aspectj.ajdt.ajc.AjdtCommand.runCommand
(AjdtCommand.java:
53)
     [iajc]     at org.aspectj.tools.ajc.Main.run(Main.java:280)
     [iajc]     at org.aspectj.tools.ajc.Main.runMain(Main.java:217)
     [iajc]     at org.aspectj.tools.ant.taskdefs.AjcTask.executeInSameVM
(AjcTas
k.java:1157)
     [iajc]     at org.aspectj.tools.ant.taskdefs.AjcTask.execute
(AjcTask.java:9
54)
     [iajc]     at org.apache.tools.ant.UnknownElement.execute
(UnknownElement.ja
va:269)
     [iajc]     at org.apache.tools.ant.Task.perform(Task.java:364)
     [iajc]     at org.apache.tools.ant.Target.execute(Target.java:301)
     [iajc]     at org.apache.tools.ant.Target.performTasks(Target.java:328)
     [iajc]     at org.apache.tools.ant.Project.executeTarget
(Project.java:1215)

     [iajc]     at org.apache.tools.ant.Project.executeTargets
(Project.java:1063
)
     [iajc]     at org.apache.tools.ant.Main.runBuild(Main.java:632)
     [iajc]     at org.apache.tools.ant.Main.startAnt(Main.java:183)
     [iajc]     at org.apache.tools.ant.launch.Launcher.run(Launcher.java:197)
     [iajc]     at org.apache.tools.ant.launch.Launcher.main(Launcher.java:56)


BUILD FAILED
C:\projects\marketedge\build.xml:301: fail due to NullPointerException"ABORT" 
(1
 exceptions)
Comment 1 Andrew Clement CLA 2004-07-28 12:20:53 EDT
I've started work on 67774 and discovered this one is a dup.  I'll carry on
working with it on 67774.  The problem is that an intertype declared constructor
is being defined *and* a withincode pointcut is in use.  When the withincode
pointcut attempts to match on the shadows in the ITD'd ctor, you get an NPE. 
Changing the visibility of the ITD'd ctor can make a difference (bizarrely!)

*** This bug has been marked as a duplicate of 67774 ***
Comment 2 Adrian Colyer CLA 2004-10-21 04:31:49 EDT
Fix released as part of AspectJ 1.2.1