Summary: | Using @DeclareParents with non-marker interface with interface-satisfying class produces incorrect error | ||
---|---|---|---|
Product: | [Tools] AspectJ | Reporter: | Ramnivas Laddad <ramnivas> |
Component: | Compiler | Assignee: | aspectj inbox <aspectj-inbox> |
Status: | RESOLVED FIXED | QA Contact: | |
Severity: | normal | ||
Priority: | P3 | CC: | aclement, ramnivas |
Version: | DEVELOPMENT | ||
Target Milestone: | 1.5.4 | ||
Hardware: | PC | ||
OS: | Windows XP | ||
Whiteboard: |
Description
Ramnivas Laddad
2007-01-03 09:42:30 EST
ramnivas - are these impacting spring users? (In reply to comment #1) > ramnivas - are these impacting spring users? > I believe I first saw it in a Spring project. This is a bit of a change to the current implementation which polices everything up front with the simple rule 'does the interface have methods? if it does, the default impl must be specified'. Switching things around to support this feature is a question of moving that check to weave time from compile time and then for each type that matches the pattern we have to check if it implements the methods as specified on the interface. I've implemented it and tried it, and it does work OK. Changes committed - there may be issues with visibility of the implementing methods and any use of covariance might cause a problem - but the basics are in. |