Bug 283747

Summary: [handles] Problems with crosscutting model and varargs
Product: [Tools] AJDT Reporter: Andrew Eisenberg <andrew.eisenberg>
Component: UIAssignee: AJDT-inbox <AJDT-inbox>
Status: NEW --- QA Contact:
Severity: normal    
Priority: P3    
Version: 2.0.0   
Target Milestone: ---   
Hardware: PC   
OS: Mac OS X - Carbon (unsup.)   
Whiteboard:
Bug Depends on: 283864    
Bug Blocks:    

Description Andrew Eisenberg CLA 2009-07-16 14:44:14 EDT
From the Mailing list:


-------

For some reason when I'm editing Java in Eclipse using AJDT some pointcuts involving both generics and arrays or var-args are not being highlighted (either with a little arrow or in the cross-reference view). The advice seems to be woven in correctly however.

The following example illustrates my problem:

public aspect Failing {
    pointcut failingPointcut() : execution(* foo*(..));
   
    after() returning() : failingPointcut()
    {
        System.out.println("hit");
    }
}

class X <T extends Object> {
    // Pointcut match highlighted
    void foo() {}
   
    // Pointcut match highlighted
    void foo1(T x) {}   
   
    // Pointcut not highlighted
    void foo2(T[] x) {}
   
    // Pointcut not highlighted
    void foo3(T... x) {}
   
    // Pointcut highlighted
    T foo3() { return null; }
   
    // Pointcut highlighted
    T[] foo4() { return null; }

    public static void main(String[] args) {
        X<Object> x = new X<Object>();
       
        x.foo2(null);       
    }
}

Running this class produces the output:
hit

Am I missing something, or is this a bug?

Eclispe reports my AspectJ envrionment as:

Eclipse AspectJ Development Tools

Version: 2.0.0.e35x-20090624-1600
AspectJ version: 1.6.5.20090618034232
Comment 1 Andrew Eisenberg CLA 2009-07-17 12:04:16 EDT
Created an aspectj bug report for this bug.
Comment 2 Andrew Eisenberg CLA 2009-09-30 14:37:19 EDT
Move to the 2.0.2 release.
Comment 3 Andrew Eisenberg CLA 2010-04-28 19:25:40 EDT
Try to solve for 2.1.0.
Comment 4 Andrew Eisenberg CLA 2010-06-16 18:12:08 EDT
Determining what will be tackled for 2.1.1 release.