From 3177a16967d9af5cdd068b78678908543985e748 Mon Sep 17 00:00:00 2001 From: aclement Date: Fri, 30 May 2008 17:21:48 +0000 Subject: [PATCH] 231396: use new Wildcard --- weaver/src/org/aspectj/weaver/World.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/weaver/src/org/aspectj/weaver/World.java b/weaver/src/org/aspectj/weaver/World.java index 75ae09ac8..db895576a 100644 --- a/weaver/src/org/aspectj/weaver/World.java +++ b/weaver/src/org/aspectj/weaver/World.java @@ -378,7 +378,7 @@ public abstract class World implements Dump.INode { } else if (ty.isGenericWildcard()) { // ======= generic wildcard types ============= - return resolveGenericWildcardFor(ty); + return resolveGenericWildcardFor((WildcardedUnresolvedType) ty); } else { // ======= simple and raw types =============== String erasedSignature = ty.getErasureSignature(); @@ -463,7 +463,7 @@ public abstract class World implements Dump.INode { /** * Go from an unresolved generic wildcard (represented by UnresolvedType) to a resolved version (BoundedReferenceType). */ - private ReferenceType resolveGenericWildcardFor(UnresolvedType aType) { + private ReferenceType resolveGenericWildcardFor(WildcardedUnresolvedType aType) { BoundedReferenceType ret = null; // FIXME asc doesnt take account of additional interface bounds (e.g. ? super R & Serializable - can you do that?) if (aType.isExtends()) { @@ -473,7 +473,8 @@ public abstract class World implements Dump.INode { ReferenceType lowerBound = (ReferenceType) resolve(aType.getLowerBound()); ret = new BoundedReferenceType(lowerBound,false,this); } else { - // must be ? on its own! + // must be ? on its own! + ret = new BoundedReferenceType("*", "Ljava/lang/Object", this); } return ret; } -- 2.39.5