Project: AspectJ
Bug 88652 an array type as the last parameter in a signature does not match on the varargs declared method
Reported: 2005-03-21 12:05:42 | Status: resolved fixed

I get this warning in my code, though I actually do not specify an array type. The signature I want to match is the following constructor signature: public Touple(Object formulaHandle, Object... propositions) {...} Touple implements IRelation The pointcut I use is the following: pointcut p(): call(Touple.new(..)); This should actually match the signature, shouldn't it? AspectJ however complains with this warning: an array type as the last parameter in a signature does not match on the varargs declared method: void ltlrv.Touple.<init>(java.lang.Object, java.lang.Object[]) [Xlint:cantMatchArrayTypeOnVarargs] Also, even if I *had* stated an array type, it should match even then IMHO, since arrays and varargs are actually the same in the Java implementation.

Files changed in fix:
tests/src/org/aspectj/systemtest/ajc150/Ajc150Tests.java weaver/src/org/aspectj/weaver/patterns/ExactTypePattern.java weaver/src/org/aspectj/weaver/patterns/SignaturePattern.java weaver/src/org/aspectj/weaver/patterns/TypePattern.java weaver/src/org/aspectj/weaver/patterns/WildTypePattern.java