diff --git a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/data/RPairList.java b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/data/RPairList.java index b729095f5df82ea0face701e2c98ccf540b0eb45..13c539fe234edd51218023805bc9442bc77e0346 100644 --- a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/data/RPairList.java +++ b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/data/RPairList.java @@ -38,6 +38,7 @@ import com.oracle.truffle.r.runtime.data.nodes.FastPathVectorAccess.FastPathFrom import com.oracle.truffle.r.runtime.data.nodes.SlowPathVectorAccess.SlowPathFromListAccess; import com.oracle.truffle.r.runtime.data.nodes.VectorAccess; import com.oracle.truffle.r.runtime.gnur.SEXPTYPE; +import com.oracle.truffle.r.runtime.nodes.RSyntaxNode; /** * Denotes the (rarely seen) {@code pairlist} type in R. diff --git a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/runtime/data/RPairListTests.java b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/runtime/data/RPairListTests.java index e7015b15084eaa9551d7e85f6942ac50b30251f2..5b0a4bfa62a0f132b04fea2bf6c647b0dcb28438 100644 --- a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/runtime/data/RPairListTests.java +++ b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/runtime/data/RPairListTests.java @@ -34,6 +34,7 @@ import com.oracle.truffle.r.runtime.data.RDataFactory; import com.oracle.truffle.r.runtime.data.RList; import com.oracle.truffle.r.runtime.data.RNull; import com.oracle.truffle.r.runtime.data.RPairList; +import com.oracle.truffle.r.runtime.data.RSymbol; public class RPairListTests { @Test @@ -48,7 +49,7 @@ public class RPairListTests { @Test public void testToList() { - RPairList pairList = RDataFactory.createPairList(1, RDataFactory.createPairList(2, RNull.instance, "name2"), "name1"); + RPairList pairList = RDataFactory.createPairList(1, RDataFactory.createPairList(2, RNull.instance, sym("name2")), sym("name1")); RList result = pairList.toRList(); assertArrayEquals(new String[]{"name1", "name2"}, result.getNames().getReadonlyData()); assertArrayEquals(new Object[]{1, 2}, result.getDataWithoutCopying()); @@ -56,13 +57,17 @@ public class RPairListTests { @Test public void testCopy() { - RPairList pairList = RDataFactory.createPairList(1, RDataFactory.createPairList(2, RNull.instance, "name2"), "name1"); + RPairList pairList = RDataFactory.createPairList(1, RDataFactory.createPairList(2, RNull.instance, sym("name2")), sym("name1")); RPairList copy = pairList.copy(); assertEquals(2, copy.getLength()); - assertEquals("name1", copy.getTag()); + assertEquals("name1", copy.getTag().toString()); assertEquals(1, copy.car()); - assertEquals("name2", ((RPairList) copy.cdr()).getTag()); + assertEquals("name2", ((RPairList) copy.cdr()).getTag().toString()); assertEquals(2, ((RPairList) copy.cdr()).car()); assertSame(RNull.instance, ((RPairList) copy.cdr()).cdr()); } + + private static RSymbol sym(String name) { + return RDataFactory.createSymbol(name); + } }