From: aclement Date: Tue, 14 Jun 2005 15:15:01 +0000 (+0000) Subject: Fix for Bugzilla Bug 98320: [generics][itds] intertype with nested generic type.... X-Git-Tag: PRE_ANDY~161 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=bdfe1316585fb6697eba3beeef0095bc9039371a;p=aspectj.git Fix for Bugzilla Bug 98320: [generics][itds] intertype with nested generic type. Now allows for nesting of parameterization by making recursive calls to resolve types and make bindings. --- diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseFactory.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseFactory.java index b6998e919..b4b89cf5e 100644 --- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseFactory.java +++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseFactory.java @@ -205,7 +205,7 @@ public class EclipseFactory { WildcardBinding wcb = (WildcardBinding) ptb.arguments[i]; arguments[i] = getName(((TypeVariableBinding)wcb.typeVariable()).firstBound); } else { - arguments[i] = getName(ptb.arguments[i]); + arguments[i] = fromBinding(ptb.arguments[i]).getName(); } } return TypeX.forParameterizedTypeNames(getName(binding), arguments); @@ -361,9 +361,9 @@ public class EclipseFactory { } else { TypeX[] typeParameters = typeX.getTypeParameters(); ReferenceBinding baseTypeBinding = lookupBinding(typeX.getBaseName()); - ReferenceBinding[] argumentBindings = new ReferenceBinding[typeParameters.length]; + TypeBinding[] argumentBindings = new TypeBinding[typeParameters.length]; for (int i = 0; i < argumentBindings.length; i++) { - argumentBindings[i] = lookupBinding(typeParameters[i].getName()); + argumentBindings[i] = makeTypeBinding(typeParameters[i]); } ParameterizedTypeBinding ptb = lookupEnvironment.createParameterizedType(baseTypeBinding,argumentBindings,baseTypeBinding.enclosingType());