Bug 336158 - Referencing ITIT using semi-qualified name from inside target type
Summary: Referencing ITIT using semi-qualified name from inside target type
Status: RESOLVED INVALID
Alias: None
Product: AspectJ
Classification: Tools
Component: Compiler (show other bugs)
Version: unspecified   Edit
Hardware: Macintosh Mac OS X
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: aspectj inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-02-02 16:03 EST by Andrew Eisenberg CLA
Modified: 2011-02-03 00:30 EST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew Eisenberg CLA 2011-02-02 16:03:35 EST
It's not clear to me that this should work, but aspectj is giving me a compile error here:

public class City {

	public static void main(String[] args) { 
		Keys.City.get();  // Keys.City cannot be resolved
	}
}

privileged aspect City_Roo_Op4j {
    public static class City.Keys {
        public static final Function<Object, City> CITY = null;
    }
}

I would expect this to work since this works when a regular inner type is accessed from inside the class that defines it, but maybe this shouldn't be allowed (if so, I'd recommend a more precise error message).
Comment 1 Andrew Clement CLA 2011-02-02 20:01:44 EST
err....  the member in the ITD'd type is called CITY, not City...
Comment 2 Andrew Eisenberg CLA 2011-02-03 00:30:31 EST
Ugggh...