Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] Is it a bug in the declare parents involving interfaces?

Hi Andy,

I have other users asking for static ITDs on interfaces too - there is
a placeholder bug:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=369261 - if you want to
add your use cases to that, it would help shape the feature.

Thanks! In order to vote on a feature or raise a bug, a login and password is required... Where Should I create one? The one related to the aspectj-users is the one to be used there?

Henrique 

On Tue, Sep 4, 2012 at 10:32 AM, Andy Clement <andrew.clement@xxxxxxxxx> wrote:
Hi,

I have other users asking for static ITDs on interfaces too - there is
a placeholder bug:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=369261 - if you want to
add your use cases to that, it would help shape the feature.

Andy

On 4 September 2012 10:03, Henrique Rebêlo <hemr@xxxxxxxxxxx> wrote:
> Hi Andy,
>
>> The fact that it works when you comment out the decp and directly add
>> 'I extends I2' indicates it is an AspectJ bug.  Please raise it at:
>> https://bugs.eclipse.org/bugs/enter_bug.cgi?product=AspectJ
>
>
> Thanks!
>
>> I can imagine this is broken as it isn't a very common pattern that I see.
>
>
> Yes. Indeed, this is one (tricky) way I figured out to add a static field in
> an interface. Do you have other suggestions that can work better? The hope
> is that in future ITD of static methods and fields work in interfaces.
> Anyway, I'll raise the bug...
>
> cheers,
> Henrique
>
> On Tue, Sep 4, 2012 at 9:56 AM, Andy Clement <andrew.clement@xxxxxxxxx>
> wrote:
>>
>> Hi,
>>
>> The fact that it works when you comment out the decp and directly add
>> 'I extends I2' indicates it is an AspectJ bug.  Please raise it at:
>> https://bugs.eclipse.org/bugs/enter_bug.cgi?product=AspectJ
>>
>> I can imagine this is broken as it isn't a very common pattern that I see.
>>
>> cheers,
>> Andy
>>
>> On 31 August 2012 14:51, Henrique Rebêlo <hemr@xxxxxxxxxxx> wrote:
>> > Hi all,
>> >
>> > Consider the following code:
>> >
>> > public interface I {}
>> >
>> > public interface I2 {
>> >   public class InnerClass{
>> >    public static int i;
>> >   }
>> > }
>> >
>> > public aspect A {
>> >
>> >   declare parents: I extends I2;
>> >
>> >   before(): execution(* I+.(..)){
>> >     boolean b = I.InnerClass.i >= 0;
>> >   }
>> > }
>> >
>> > This code does not compile when I use the declare parents. It does not
>> > recognize the inherited inner class. So, it complains when trying to
>> > access
>> > the static field i. If I comment the declare parents line, and
>> > explicitly
>> > make the interface I to extend the Interface I2, the code compiles. Is
>> > there
>> > something wrong? or Is it a compiler's bug related to the declare
>> > parents?
>> >
>> > cheers,
>> > Henrique
>> > --
>> >
>> > ...............................................................................................................................
>> > Henrique Rebelo
>> > http://www.cin.ufpe.br/~hemr
>> > Informatics Center, UFPE, Brazil
>> >
>> > _______________________________________________
>> > aspectj-users mailing list
>> > aspectj-users@xxxxxxxxxxx
>> > https://dev.eclipse.org/mailman/listinfo/aspectj-users
>> >
>> _______________________________________________
>> aspectj-users mailing list
>> aspectj-users@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
>
>
>
> --
> ...............................................................................................................................
> Henrique Rebelo
> http://www.cin.ufpe.br/~hemr
> Informatics Center, UFPE, Brazil
>
> _______________________________________________
> aspectj-users mailing list
> aspectj-users@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/aspectj-users
>
_______________________________________________
aspectj-users mailing list
aspectj-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aspectj-users



--
...............................................................................................................................
Henrique Rebelo
http://www.cin.ufpe.br/~hemr
Informatics Center, UFPE, Brazil

Back to the top