Bug 513282

Summary: Compiler crash for funny syntax within(@within(Foo) *)
Product: [Tools] AspectJ Reporter: Alexander Kriegisch <Alexander>
Component: CompilerAssignee: aspectj inbox <aspectj-inbox>
Status: NEW --- QA Contact:
Severity: normal    
Priority: P3    
Version: 1.8.9   
Target Milestone: ---   
Hardware: PC   
OS: Windows 10   
Whiteboard:

Description Alexander Kriegisch CLA 2017-03-07 17:38:15 EST
I used some funny syntax (probably not making much sense, BTW) and happened to bump into a compiler crash:

package de.scrum_master.aspect;

public aspect MetaAnnotationAspect {
  after() : within(@within(Foo) *) {}
}


java.lang.IllegalStateException
at org.aspectj.weaver.patterns.WildAnnotationTypePattern.matches(WildAnnotationTypePattern.java:264)
at org.aspectj.weaver.patterns.WildAnnotationTypePattern.matches(WildAnnotationTypePattern.java:68)
at org.aspectj.weaver.patterns.AnyWithAnnotationTypePattern.matchesExactly(AnyWithAnnotationTypePattern.java:56)
at org.aspectj.weaver.patterns.TypePattern.matchesStatically(TypePattern.java:132)
at org.aspe ... otationAspect;
                    RETURN
  end private static void ajc$postClinit()
end public class de.scrum_master.aspect.MetaAnnotationAspect