From 8d090af6c132503476529e4d3b35d124fe3c48b9 Mon Sep 17 00:00:00 2001
From: Florian Angerer <florian.angerer@oracle.com>
Date: Thu, 29 Jun 2017 16:57:14 +0200
Subject: [PATCH] Fix: iterating over size of calls instead of statements.

---
 .../src/com/oracle/truffle/r/engine/REngine.java              | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/REngine.java b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/REngine.java
index 7ecb06de96..ca2133ea91 100644
--- a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/REngine.java
+++ b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/REngine.java
@@ -371,10 +371,10 @@ final class REngine implements Engine, Engine.Timings {
             RContext.setThreadLocalInstance(newContext);
             try {
                 Object lastValue = RNull.instance;
-                for (int i = 0; i < statements.size(); i++) {
-                    RSyntaxNode node = statements.get(i);
+                for (int i = 0; i < calls.length; i++) {
                     if (calls[i] == null) {
                         CompilerDirectives.transferToInterpreterAndInvalidate();
+                        RSyntaxNode node = statements.get(i);
                         calls[i] = insert(Truffle.getRuntime().createDirectCallNode(doMakeCallTarget(node.asRNode(), RSource.Internal.REPL_WRAPPER.string, printResult, true)));
                     }
                     lastValue = calls[i].call(new Object[]{executionFrame != null ? executionFrame : newContext.stateREnvironment.getGlobalFrame()});
-- 
GitLab