Community
Participate
Working Groups
I've tracked the correct setting of the 1.4 source level option through AJDT into Ajde. If I enableLogging( ) in Ajde, it even prints out correctly that source14 is set to true, and appears to set the correct property in the CompilerAdapter Map. However, the compile itself is not honoring this flag. Simplest test is to compile any source file with an assert in it. I've assigned this bug to myself(!) for now - though if anyone fixes it before I get to it then that's fine ;). This option works fine from the command line, so I'll track down how the options are processed there and see what's different from the Ajde route. For the time being, this option will not work from any of the IDEs.
Tracked this one down... When performing a command-line compile, options are set through (a) the constructor of org.eclipse.jdt.internal.compiler.batch.Main, and then through the configure() method of the same. When driven through Ajde, the options are set through a different route where the option processing is much less comprehensive: org.aspectj.ajde.internal.CompilerAdapter sets the Compliance level to 1.4 in reponse to a -source14 option, but fails to also set the [eclipse] -source option to 1.4 as well (which configure does()). This later causes the AjParser to be incorrectly instantiated with assertMode = false. I'm not planning to patch this in isolation, since the proper fix is to add full support for the new AspectJ 1.1 options (including -1.4) in Ajde. This work is nearly complete in my local copy, but I want to run some more tests yet before submitting.
Fixed now that Mik has integrated the patches for 29769