diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/AccessFieldNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/AccessFieldNode.java index 1da4aba55b6c2ac991e8c98c495a14c76443d8f9..328f898e46ad8e6f8b48906815c003a24e692ba5 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/AccessFieldNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/access/AccessFieldNode.java @@ -56,6 +56,12 @@ public abstract class AccessFieldNode extends RNode { return RNull.instance; } + @Specialization(order = 3) + public Object accessField(REnvironment env) { + Object obj = env.get(getField()); + return obj == null ? RNull.instance : obj; + } + @Specialization(order = 1000) public Object accessField(@SuppressWarnings("unused") RAbstractVector object) { CompilerDirectives.transferToInterpreter();