diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/control/AbstractLoopNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/control/AbstractLoopNode.java index 72a6608175c99b69489c916760bc039dc2d87bfe..8b44c6d0176fe299f073733c4ef47d53eda03998 100644 --- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/control/AbstractLoopNode.java +++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/control/AbstractLoopNode.java @@ -32,6 +32,7 @@ import com.oracle.truffle.r.runtime.nodes.RNode; import com.oracle.truffle.r.runtime.nodes.RSyntaxCall; import com.oracle.truffle.r.runtime.nodes.RSyntaxElement; import com.oracle.truffle.r.runtime.nodes.RSyntaxLookup; +import com.oracle.truffle.r.runtime.nodes.RSyntaxNode; /** Marker class for loops. */ public abstract class AbstractLoopNode extends OperatorNode { @@ -47,9 +48,9 @@ public abstract class AbstractLoopNode extends OperatorNode { if (rootNode instanceof RRootNode) { function = rootNode.toString(); } - SourceSection sourceSection = getSourceSection(); + SourceSection sourceSection = getLazySourceSection(); int startLine = -1; - if (sourceSection != null) { + if (sourceSection != null && sourceSection != RSyntaxNode.LAZY_DEPARSE && sourceSection != RSyntaxNode.INTERNAL && sourceSection != RSyntaxNode.SOURCE_UNAVAILABLE) { startLine = sourceSection.getStartLine(); } RSyntaxElement call = ((RSyntaxCall) this).getSyntaxLHS();