diff graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/parser/TypeSystemParser.java @ 16923:93e061157811

Truffle-DSL: better support for types with type arguments.
author Christian Humer <christian.humer@gmail.com>
date Mon, 25 Aug 2014 20:59:56 +0200
parents 0370880ac9ce
children 58eb9bbb60c4
line wrap: on
line diff
--- a/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/parser/TypeSystemParser.java	Mon Aug 25 16:30:40 2014 +0200
+++ b/graal/com.oracle.truffle.dsl.processor/src/com/oracle/truffle/dsl/processor/parser/TypeSystemParser.java	Mon Aug 25 20:59:56 2014 +0200
@@ -183,10 +183,12 @@
 
         int index = 0;
         for (TypeMirror primitiveType : typeMirrors) {
-            TypeMirror boxedType = ElementUtils.boxType(context, primitiveType);
-            TypeData typeData = new TypeData(typeSystem, index, annotationValue, primitiveType, boxedType);
+            TypeMirror primitive = ElementUtils.fillInGenericWildcards(primitiveType);
 
-            if (isPrimitiveWrapper(primitiveType)) {
+            TypeMirror boxedType = ElementUtils.boxType(context, primitive);
+            TypeData typeData = new TypeData(typeSystem, index, annotationValue, primitive, boxedType);
+
+            if (isPrimitiveWrapper(primitive)) {
                 typeData.addError("Types must not contain primitive wrapper types.");
             }