Bug 471052

Summary: APT ordering problem
Product: [Tools] AspectJ Reporter: Andrew Clement <aclement>
Component: CompilerAssignee: aspectj inbox <aspectj-inbox>
Status: NEW --- QA Contact:
Severity: normal    
Priority: P3    
Version: DEVELOPMENT   
Target Milestone: ---   
Hardware: PC   
OS: Mac OS X   
Whiteboard:

Description Andrew Clement CLA 2015-06-25 16:36:01 EDT
Observed during mars upgrade. The JDT logic seems to go a bit like this:

compile some files
pass them for annotation processing

this produces new files

pass *all* those files back in for compilation again
*but* only pass the new files for further annotation processing.

It remembers which files have already gone to the annotation processor using an index into the list of files. However, the AjPipeliningCompilerAdapter is run (via aspect) after the compile step and before the annotation processing call. This compiler adapter sorts the files so that the aspects are first! This means the index is a bit meaningless.  I don't have a testcase that shows this as a problem yet, but I suspect it is...