Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 336745

Summary: incorrect signatures for generic ITDs
Product: [Tools] AspectJ Reporter: Andrew Clement <aclement>
Component: CompilerAssignee: aspectj inbox <aspectj-inbox>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3    
Version: DEVELOPMENT   
Target Milestone: 1.6.11   
Hardware: PC   
OS: Windows 7   
Whiteboard:

Description Andrew Clement CLA 2011-02-09 13:41:00 EST
aspect Foo {
  <T extends I> void C.mitd(T something) {}
}

class C {
  <T extends I> void m(T something) {}
}

interface I {}

Compiling that reveals differing generic signatures for the m vs the mitd methods:

m:    <T::LI;>(TT;)V;
mitd: <T:Ljava/lang/Object;:LI;>(TT;)V;

aspectj is incorrectly using a first bound of Object when that shouldn't be included when there is an interface bound around.
Comment 1 Andrew Clement CLA 2011-02-10 17:55:44 EST
fixed