aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--weaver/src/org/aspectj/weaver/ResolvedMemberImpl.java10
1 files changed, 9 insertions, 1 deletions
diff --git a/weaver/src/org/aspectj/weaver/ResolvedMemberImpl.java b/weaver/src/org/aspectj/weaver/ResolvedMemberImpl.java
index 3f39fdb71..71eb910cb 100644
--- a/weaver/src/org/aspectj/weaver/ResolvedMemberImpl.java
+++ b/weaver/src/org/aspectj/weaver/ResolvedMemberImpl.java
@@ -681,7 +681,15 @@ public class ResolvedMemberImpl extends MemberImpl implements IHasPosition, Anno
} else {
return aType.getRawType();
}
- }
+ } else if (aType.isArray()) {
+ // The component type might be a type variable (pr150095)
+ int dims = 1;
+ String sig = aType.getSignature();
+ while (sig.charAt(dims)=='[') dims++;
+ UnresolvedType componentSig = UnresolvedType.forSignature(sig.substring(dims));
+ UnresolvedType arrayType = ResolvedType.makeArray(parameterize(componentSig,typeVariableMap,inParameterizedType),dims);
+ return arrayType;
+ }
return aType;
}