Bug 38824 - Anomalous handling of inter-type declarations to abstract base classes in aspectj 1.1
Summary: Anomalous handling of inter-type declarations to abstract base classes in asp...
Status: RESOLVED FIXED
Alias: None
Product: AspectJ
Classification: Tools
Component: Compiler (show other bugs)
Version: unspecified   Edit
Hardware: Other Linux
: P2 major (vote)
Target Milestone: 1.2   Edit
Assignee: Jim Hugunin CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-06-12 05:35 EDT by Panagiotis Louridas CLA
Modified: 2004-01-15 04:17 EST (History)
0 users

See Also:


Attachments
example (1.17 KB, text/plain)
2003-11-14 12:10 EST, attila lendvai CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Panagiotis Louridas CLA 2003-06-12 05:35:45 EDT
Version 1.1 of aspectj does not handle correctly inter-type declarations to
abstract base classes.

This appears when the following pattern is present in the code:

Suppose there is an interface InterfaceA, another interface InterfaceB and a
third interface InterfaceC extending InterfaceA and InterfaceB and containing
some method declarations of its own. 

Suppose also there is an aspect AConcretisingAspect that contains inter-type
declarations providing default implementations for all InterfaceC's methods
(both own and inherited).

Now suppose we have a class hierarchy emanating from an abstract class
BaseClass, and an aspect BaseClassAspect declaring that BaseClass implements
InterfaceC:

aspect BaseClassAspect {
     declare parents: BaseClass implements InterfaceC;
}

Unfortunately, during compilation iajc complains for each offspring of BaseClass
that it does not implement any of the abstract methods of InterfaceA and
InterfaceB (but not of InterfaceC's own!).

This does not happen when BaseClass is not abstract; and it does not occur in
version 1.0.6 of aspectj.
Comment 1 Jim Hugunin CLA 2003-08-25 13:33:28 EDT
This bug needs a self-contained example in order to be verified and fixed.  Here
are two examples of bug reports for similar bugs that contained good examples:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=39462
https://bugs.eclipse.org/bugs/show_bug.cgi?id=41123

It would be very valuable to us if you could provide a similar example for this
bug.  Thanks for your help.
Comment 2 attila lendvai CLA 2003-11-14 12:10:01 EST
Created attachment 6786 [details]
example

I think the bug is much simpler, see attached source.
Comment 3 Adrian Colyer CLA 2004-01-15 04:17:59 EST
Fixed by patch contributed by George Harley