From 915b35a19bc0ffa88fdf05635e09807973e84bdf Mon Sep 17 00:00:00 2001
From: Lukas Stadler <lukas.stadler@oracle.com>
Date: Wed, 11 May 2016 16:29:52 +0200
Subject: [PATCH] various cleanups

---
 .../oracle/truffle/r/engine/interop/RInteropExecuteNode.java | 2 --
 .../src/com/oracle/truffle/r/test/TestBase.java              | 5 +++++
 .../src/com/oracle/truffle/r/test/TestRBase.java             | 3 +++
 .../truffle/r/test/builtins/TestBuiltin_parentframe.java     | 1 -
 .../src/com/oracle/truffle/r/test/parser/TestParser.java     | 2 +-
 5 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/interop/RInteropExecuteNode.java b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/interop/RInteropExecuteNode.java
index c0ba64a4b7..9d0e64de79 100644
--- a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/interop/RInteropExecuteNode.java
+++ b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/interop/RInteropExecuteNode.java
@@ -36,7 +36,6 @@ import com.oracle.truffle.api.interop.ForeignAccess;
 import com.oracle.truffle.api.nodes.Node;
 import com.oracle.truffle.api.nodes.RootNode;
 import com.oracle.truffle.r.engine.TruffleRLanguage;
-import com.oracle.truffle.r.nodes.function.CallMatcherNode;
 import com.oracle.truffle.r.nodes.function.RCallNode;
 import com.oracle.truffle.r.runtime.ArgumentsSignature;
 import com.oracle.truffle.r.runtime.RArguments;
@@ -51,7 +50,6 @@ class RInteropExecuteNode extends RootNode {
     private final FrameSlot slot = emptyFrameDescriptor.addFrameSlot(argsIdentifier, FrameSlotKind.Object);
 
     @Child private RCallNode call = RCallNode.createExplicitCall(argsIdentifier);
-    @Child private CallMatcherNode callMatcher = CallMatcherNode.create(false, true);
     @Child private Node findContext = TruffleRLanguage.INSTANCE.actuallyCreateFindContextNode();
 
     private final ArgumentsSignature suppliedSignature;
diff --git a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/TestBase.java b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/TestBase.java
index 7677301bd5..e3adf8b651 100644
--- a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/TestBase.java
+++ b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/TestBase.java
@@ -327,6 +327,8 @@ public class TestBase {
     private static int ignoredInputCount;
     private static int failedInputCount;
 
+    protected static String explicitTestContext;
+
     /**
      * A way to limit which tests are actually run. TODO requires more JUnit support for filtering
      * in the wrapper.
@@ -427,6 +429,9 @@ public class TestBase {
     }
 
     private static String getTestContext() {
+        if (explicitTestContext != null) {
+            return explicitTestContext;
+        }
         // We want the stack trace as if the JUnit test failed
         RuntimeException ex = new RuntimeException();
         // The first method not in TestBase is the culprit
diff --git a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/TestRBase.java b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/TestRBase.java
index a089f96f36..055d9d1d32 100644
--- a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/TestRBase.java
+++ b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/TestRBase.java
@@ -74,6 +74,7 @@ public class TestRBase extends TestBase {
             return;
         }
         for (int i = 0; i < files.length; i++) {
+            explicitTestContext = testDirName + "/R/" + files[i].getName();
             try {
                 BufferedReader bf = new BufferedReader(new FileReader(files[i]));
                 TestTrait testTrait = null;
@@ -98,6 +99,8 @@ public class TestRBase extends TestBase {
                 }
             } catch (IOException x) {
                 Assert.fail("error reading: " + files[i].getPath() + ": " + x);
+            } finally {
+                explicitTestContext = null;
             }
         }
     }
diff --git a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/builtins/TestBuiltin_parentframe.java b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/builtins/TestBuiltin_parentframe.java
index f3b0a6ced7..24c720e278 100644
--- a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/builtins/TestBuiltin_parentframe.java
+++ b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/builtins/TestBuiltin_parentframe.java
@@ -52,5 +52,4 @@ public class TestBuiltin_parentframe extends TestBase {
         assertEval("{ f <- function(frame) frame; g <- function() f(parent.frame()); g() }");
         assertEval("{ f <- function(frame) frame; g <- function() f(parent.frame(3)); g() }");
     }
-
 }
diff --git a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/parser/TestParser.java b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/parser/TestParser.java
index 7923cea626..ac2c877be1 100644
--- a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/parser/TestParser.java
+++ b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/parser/TestParser.java
@@ -76,7 +76,7 @@ public class TestParser extends TestBase {
     @Test
     public void testLexerError() {
         // FastR provides a more accurate error message
-        assertEval(Output.ContainsError, "%0");
+        assertEval(Output.ContainsAmbiguousError, "%0");
     }
 
     /**
-- 
GitLab