From 0b94f943163c601e09f10e262f886f0afef63b57 Mon Sep 17 00:00:00 2001 From: Tomas Stupka <tomas.stupka@oracle.com> Date: Mon, 20 Nov 2017 15:58:42 +0100 Subject: [PATCH] if no keys then ListMR should instead of RNull return an empty vector (responding to HAS_SIZE) --- .../src/com/oracle/truffle/r/engine/interop/ListMR.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/interop/ListMR.java b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/interop/ListMR.java index 8423b27c8b..a92ef70a06 100644 --- a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/interop/ListMR.java +++ b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/interop/ListMR.java @@ -45,12 +45,12 @@ import com.oracle.truffle.r.nodes.access.vector.ReplaceVectorNode; import com.oracle.truffle.r.nodes.attributes.SpecialAttributesFunctions.GetNamesAttributeNode; import com.oracle.truffle.r.nodes.control.RLengthNode; import com.oracle.truffle.r.runtime.data.NativeDataAccess; +import com.oracle.truffle.r.runtime.data.RDataFactory; import com.oracle.truffle.r.runtime.data.RExpression; import com.oracle.truffle.r.runtime.data.RFunction; import com.oracle.truffle.r.runtime.data.RList; import com.oracle.truffle.r.runtime.data.RLogical; import com.oracle.truffle.r.runtime.data.RMissing; -import com.oracle.truffle.r.runtime.data.RNull; import com.oracle.truffle.r.runtime.data.RPairList; import com.oracle.truffle.r.runtime.data.RStringVector; import com.oracle.truffle.r.runtime.data.RTruffleObject; @@ -533,6 +533,6 @@ public class ListMR { private static Object listKeys(TruffleObject receiver, GetNamesAttributeNode getNamesNode) { RStringVector names = getNamesNode.getNames(receiver); - return names != null ? names : RNull.instance; + return names != null ? names : RDataFactory.createEmptyStringVector(); } } -- GitLab