Community
Participate
Working Groups
Created attachment 255894 [details] proposed patch When weaving aspect, which has two base aspects, code from a1cfe944a602101d144c8efd7df217ab20e4b9ee goes into an infinite loop. There isn't assignment of boType inside while loop, so if lazyMethodGen doesn't find matching method in direct base class, it stays forewer in while loop, stack trace from build thread: "main" #1 prio=5 os_prio=0 tid=0x00007fd6c4008800 nid=0x9e8 runnable [0x00007fd6ca11d000] java.lang.Thread.State: RUNNABLE at org.aspectj.weaver.bcel.BcelAdvice.canInline(BcelAdvice.java:257) at org.aspectj.weaver.bcel.BcelAdvice.implementOn(BcelAdvice.java:378) at org.aspectj.weaver.Shadow.implementMungers(Shadow.java:632) at org.aspectj.weaver.Shadow.implement(Shadow.java:547) at org.aspectj.weaver.bcel.BcelClassWeaver.implement(BcelClassWeaver.java:3335) at org.aspectj.weaver.bcel.BcelClassWeaver.weave(BcelClassWeaver.java:496) at org.aspectj.weaver.bcel.BcelClassWeaver.weave(BcelClassWeaver.java:100) at org.aspectj.weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1689) at org.aspectj.weaver.bcel.BcelWeaver.weaveWithoutDump(BcelWeaver.java:1633) at org.aspectj.weaver.bcel.BcelWeaver.weaveAndNotify(BcelWeaver.java:1398) at org.aspectj.weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1184) at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.weaveQueuedEntries(AjPipeliningCompilerAdapter.java:514) at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.queueForWeaving(AjPipeliningCompilerAdapter.java:447) at org.aspectj.ajdt.internal.compiler.AjPipeliningCompilerAdapter.afterProcessing(AjPipeliningCompilerAdapter.java:432) at org.aspectj.ajdt.internal.compiler.CompilerAdapter.ajc$after$org_aspectj_ajdt_internal_compiler_CompilerAdapter$5$6b855184(CompilerAdapter.aj:103) at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:822) at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:480) at org.aspectj.org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:420) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performCompilation(AjBuildManager.java:1036) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.performBuild(AjBuildManager.java:272) at org.aspectj.ajdt.internal.core.builder.AjBuildManager.batchBuild(AjBuildManager.java:185) at org.aspectj.ajdt.ajc.AjdtCommand.doCommand(AjdtCommand.java:112) at org.aspectj.ajdt.ajc.AjdtCommand.runCommand(AjdtCommand.java:60) at org.aspectj.tools.ajc.Main.run(Main.java:371) at org.aspectj.tools.ajc.Main.runMain(Main.java:248) at org.codehaus.mojo.aspectj.AbstractAjcCompiler.execute(AbstractAjcCompiler.java:524) I'm attaching simple maven test case and patch working for me.
Created attachment 255895 [details] test case
All fixed up. Thanks so much for taking the time to produce a minimal testcase, those are invaluable.