diff truffle/com.oracle.truffle.tck/src/com/oracle/truffle/tck/ComplexNumber.java @ 22499:9bba3a7b34be

Check foreign arguments when accessing ComplexNumber/Sequence objects
author Matthias Grimmer <grimmer@ssw.jku.at>
date Mon, 14 Dec 2015 15:07:19 +0100
parents b3569a53c24c
children 89db2519ef18
line wrap: on
line diff
--- a/truffle/com.oracle.truffle.tck/src/com/oracle/truffle/tck/ComplexNumber.java	Mon Dec 14 14:30:41 2015 +0100
+++ b/truffle/com.oracle.truffle.tck/src/com/oracle/truffle/tck/ComplexNumber.java	Mon Dec 14 15:07:19 2015 +0100
@@ -107,8 +107,8 @@
         @Override
         public Object execute(VirtualFrame frame) {
             ComplexNumber complex = (ComplexNumber) ForeignAccess.getReceiver(frame);
-            String identifier = (String) ForeignAccess.getArguments(frame).get(0);
-            Number value = (Number) ForeignAccess.getArguments(frame).get(1);
+            String identifier = TckLanguage.expectString(ForeignAccess.getArguments(frame).get(0));
+            Number value = TckLanguage.expectNumber(ForeignAccess.getArguments(frame).get(1));
             complex.set(identifier, value.doubleValue());
             return value;
         }
@@ -122,7 +122,7 @@
         @Override
         public Object execute(VirtualFrame frame) {
             ComplexNumber complex = (ComplexNumber) ForeignAccess.getReceiver(frame);
-            String identifier = (String) ForeignAccess.getArguments(frame).get(0);
+            String identifier = TckLanguage.expectString(ForeignAccess.getArguments(frame).get(0));
             return complex.get(identifier);
         }