Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [aspectj-users] Problems with generic aspects

It is definetly an AspectJ bug that you should raise.  In my copy of
your scenario I was able to work around it with -XnoInline, but I
guess that doesnt seem to work for you.  The problem is a missing cast
in the generated code that needs to be included because the erasure of
your type variable is Object for the generic aspect.

Andy.


On 14/02/07, Nuno Santos <developer@xxxxxxxxxxxxxx> wrote:
Hi,

It seems even worst:

Exception in thread "main" java.lang.VerifyError: (class:
section3/JGFRayTracerBenchSizeA, method: main signature:
([Ljava/lang/String;)V) Incompatible object argument for function call

Any tips?

Cheers,

Nuno

Quoting Andy Clement <andrew.clement@xxxxxxxxx>:

> I think you can specify no inlining in the project properties.
>
> On 13/02/07, Nuno Santos <developer@xxxxxxxxxxxxxx> wrote:
>> Hi,
>>
>> I always use Eclipse to program with aspect.
>>
>> Where can i addd that flag?
>>
>> Thx,
>>
>> Nuno
>>
>> Andy Clement escreveu:
>>> Verify Errors are typically bugs in the AspectJ weaver - please try
>>> compiling with -XnoInline to see if that helps your situation?
>>>
>>> Andy.
>>>
>>> On 13/02/07, Nuno Santos <developer@xxxxxxxxxxxxxx> wrote:
>>>>
>>>> Hi,
>>>>
>>>> I'm trying to adapt some aspect code to generic aspects but i'm having
>>>> problems.
>>>>
>>>> I'm having the following error in something that i hadnt before, this is
>>>> happening for the broadcast pointcut. What means that error?
>>>>
>>>>
>>>> Exception in thread "main" java.lang.VerifyError: (class:
>>>> section3/raytracer/JGFRayTracerBench, method:
>>>> setScene_aroundBody1$advice signature:
>>>>
>> (Lsection3/raytracer/JGFRayTracerBench;Lsection3/raytracer/JGFRayTracerBench;Lsection3/raytracer/Scene;Lsection3/raytracer/Replicate;Ljava/lang/Object;Lorg/aspect
>>>>
>>>>  at
>>>>
>> section3.JGFRayTracerBenchSizeA.init$_aroundBody0(JGFRayTracerBenchSizeA.java)
>>>>
>>>>  at
>>>>
>> section3.JGFRayTracerBenchSizeA.init$_aroundBody1$advice(JGFRayTracerBenchSizeA.java:128)
>>>>
>>>>  at
>>>> section3.JGFRayTracerBenchSizeA.main(JGFRayTracerBenchSizeA.java:30)
>>>>
>>>>  public abstract aspect Replicate<T> {
>>>>
>>>>  protected pointcut broadcast(T servant);
>>>>
>>>>  void around(T servant): broadcast(servant) {
>>>>
>>>>  proceed(servant);
>>>>  }
>>>>  }
>>>>
>>>>  public aspect ReplicateConcrete extends Replicate<JGFRayTracerBench> {
>>>>
>>>>
>>>>  protected pointcut broadcast(JGFRayTracerBench servant) : call(*
>>>> *.setScene(..)) && target(servant);
>>>>
>>>>  }
>>>>
>>>> Thx,
>>>>
>>>> Nuno
>>>> _______________________________________________
>>>> 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
>>
>> _______________________________________________
>> 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



----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.

_______________________________________________
aspectj-users mailing list
aspectj-users@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/aspectj-users



Back to the top