Bug 371793 - @javax.annotation.Nonnull on constructor args causes bad class file / bad signature error when javac tries to use a woven class
Summary: @javax.annotation.Nonnull on constructor args causes bad class file / bad sig...
Status: NEW
Alias: None
Product: AspectJ
Classification: Tools
Component: Compiler (show other bugs)
Version: unspecified   Edit
Hardware: Macintosh Mac OS X - Carbon (unsup.)
: P3 major with 1 vote (vote)
Target Milestone: ---   Edit
Assignee: aspectj inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-02-16 12:00 EST by Matt McHenry CLA
Modified: 2012-08-29 17:43 EDT (History)
1 user (show)

See Also:


Attachments
enum class, SeriesInfo.java (2.46 KB, text/plain)
2012-02-16 12:01 EST, Matt McHenry CLA
no flags Details
swing checking aspect, CheckSwing.aj (9.25 KB, text/plain)
2012-02-16 12:02 EST, Matt McHenry CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Matt McHenry CLA 2012-02-16 12:00:22 EST
Build Identifier: 

We have a simple enum class whose constructor takes the following arguments:

> @Nonnull String n, @Nonnull Color active, @Nonnull Color locked, Image openPoint, Image closedPoint

When woven with our aspect that's used to check various swing calls, further invocations of javac with this class on the classpath produce the following error:

> cannot access cl.ui.settings.SeriesInfo
> bad class file: cl/ui/settings/SeriesInfo.class(cl/ui/settings:SeriesInfo.class)
> bad signature: ?2?
> Please remove or make sure it appears in the correct subdirectory of the classpath.
> import cl.ui.settings.SeriesInfo;
>                      ^

Commenting out the @Nonnull annotations restores it to a working state.  This happens with 1.6.12.

Reproducible: Always
Comment 1 Matt McHenry CLA 2012-02-16 12:01:36 EST
Created attachment 211127 [details]
enum class, SeriesInfo.java
Comment 2 Matt McHenry CLA 2012-02-16 12:02:26 EST
Created attachment 211128 [details]
swing checking aspect, CheckSwing.aj