diff graal/com.oracle.truffle.api.dsl.test/src/com/oracle/truffle/api/dsl/test/TypeSystemTest.java @ 16830:c3c07046a74b

Truffle-DSL: fixed guard solve of guards for interfaces.
author Christian Humer <christian.humer@gmail.com>
date Thu, 14 Aug 2014 15:02:17 +0200
parents 5148aab962af
children c5db657d93c1
line wrap: on
line diff
--- a/graal/com.oracle.truffle.api.dsl.test/src/com/oracle/truffle/api/dsl/test/TypeSystemTest.java	Thu Aug 14 13:11:47 2014 +0200
+++ b/graal/com.oracle.truffle.api.dsl.test/src/com/oracle/truffle/api/dsl/test/TypeSystemTest.java	Thu Aug 14 15:02:17 2014 +0200
@@ -31,7 +31,8 @@
 
 public class TypeSystemTest {
 
-    @TypeSystem({int.class, double.class, boolean.class, BigInteger.class, String.class, CallTarget.class, BExtendsAbstract.class, CExtendsAbstract.class, Abstract.class, Object[].class})
+    @TypeSystem({int.class, double.class, boolean.class, BigInteger.class, String.class, CallTarget.class, BExtendsAbstract.class, CExtendsAbstract.class, Abstract.class, Interface.class,
+                    Object[].class})
     static class SimpleTypes {
 
         static int intCheck;
@@ -104,6 +105,10 @@
             return SimpleTypesGen.SIMPLETYPES.expectDouble(execute(frame));
         }
 
+        public Interface executeInterface(VirtualFrame frame) throws UnexpectedResultException {
+            return SimpleTypesGen.SIMPLETYPES.expectInterface(execute(frame));
+        }
+
         public Object execute(@SuppressWarnings("unused") VirtualFrame frame) {
             throw new UnsupportedOperationException();
         }
@@ -184,4 +189,6 @@
         static final CExtendsAbstract INSTANCE = new CExtendsAbstract();
     }
 
+    interface Interface {
+    }
 }