diff --git a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/RRuntimeASTAccessImpl.java b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/RRuntimeASTAccessImpl.java index e35e7bff998d9d35a3cb03c245a7603b41cac44f..60b6a089028cf268afd4a74c3634019979dfcc84 100644 --- a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/RRuntimeASTAccessImpl.java +++ b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/RRuntimeASTAccessImpl.java @@ -186,7 +186,7 @@ class RRuntimeASTAccessImpl implements RRuntimeASTAccess { } else { result = call.getSyntaxArguments()[index - 1]; if (result == null) { - result = RSyntaxLookup.createDummyLookup(null, "", false); + result = RSyntaxLookup.createDummyLookup(RSyntaxNode.LAZY_DEPARSE, "", false); } } } else if (s instanceof RSyntaxFunction) { diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/control/BreakNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/control/BreakNode.java index fc8bfd04c6dabc70455705b3a3b409791295fed7..c7053bbd4ea54439f18b67503d060929b30a5392 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/control/BreakNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/control/BreakNode.java @@ -27,12 +27,13 @@ import com.oracle.truffle.api.source.SourceSection; import com.oracle.truffle.r.nodes.function.visibility.SetVisibilityNode; import com.oracle.truffle.r.runtime.ArgumentsSignature; import com.oracle.truffle.r.runtime.nodes.RSyntaxElement; +import com.oracle.truffle.r.runtime.nodes.RSyntaxLookup; public final class BreakNode extends OperatorNode { @Child private SetVisibilityNode visibility = SetVisibilityNode.create(); - public BreakNode(SourceSection src, RSyntaxElement operator) { + public BreakNode(SourceSection src, RSyntaxLookup operator) { super(src, operator); } diff --git a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/RDeparse.java b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/RDeparse.java index b1129553c4879fc79a25a9e0df03e7c8302c093e..17ab018095042d19160baed7dbe2594190d3b7c1 100644 --- a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/RDeparse.java +++ b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/RDeparse.java @@ -772,7 +772,7 @@ public class RDeparse { private static RSyntaxElement wrap(Object v, boolean isCallLHS) { Object value = RRuntime.asAbstractVector(v); if (value instanceof RSymbol) { - return RSyntaxLookup.createDummyLookup(null, ((RSymbol) value).getName(), isCallLHS); + return RSyntaxLookup.createDummyLookup(RSyntaxNode.INTERNAL, ((RSymbol) value).getName(), isCallLHS); } else if (value instanceof RLanguage) { return ((RLanguage) value).getRep().asRSyntaxNode(); } else if (value instanceof RPairList) { diff --git a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/nodes/RSyntaxLookup.java b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/nodes/RSyntaxLookup.java index d3c0626c4055f2c4bd574abbe0e0b2a47f46df2f..eb5d2c888e7a407358daeba35a65e647cd6d8008 100644 --- a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/nodes/RSyntaxLookup.java +++ b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/nodes/RSyntaxLookup.java @@ -41,8 +41,7 @@ public interface RSyntaxLookup extends RSyntaxElement { * characters of the original source section (if non-null) will be used as the new source * section. */ - static RSyntaxLookup createDummyLookup(SourceSection originalSource, String identifier, boolean isFunctionLookup) { - SourceSection source = originalSource == null || originalSource.getCharEndIndex() == 0 ? null : originalSource.getSource().createSection(originalSource.getCharIndex(), 1); + static RSyntaxLookup createDummyLookup(SourceSection source, String identifier, boolean isFunctionLookup) { return new RSyntaxLookup() { @Override public SourceSection getLazySourceSection() {