From 58fa7e0b05218f0bfff19cbb6ed4919fa66c7b9b Mon Sep 17 00:00:00 2001
From: Mick Jordan <mick.jordan@oracle.com>
Date: Wed, 5 Oct 2016 20:43:49 -0700
Subject: [PATCH] Put String.format behind TruffleBoundary

---
 .../truffle/r/nodes/builtin/casts/PipelineToCastNode.java    | 3 ++-
 .../src/com/oracle/truffle/r/runtime/Utils.java              | 5 +++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/casts/PipelineToCastNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/casts/PipelineToCastNode.java
index ff3dc4fb90..3b1104be79 100644
--- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/casts/PipelineToCastNode.java
+++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/casts/PipelineToCastNode.java
@@ -87,6 +87,7 @@ import com.oracle.truffle.r.runtime.RError;
 import com.oracle.truffle.r.runtime.RInternalError;
 import com.oracle.truffle.r.runtime.RRuntime;
 import com.oracle.truffle.r.runtime.RType;
+import com.oracle.truffle.r.runtime.Utils;
 import com.oracle.truffle.r.runtime.data.RComplex;
 import com.oracle.truffle.r.runtime.data.model.RAbstractComplexVector;
 import com.oracle.truffle.r.runtime.data.model.RAbstractDoubleVector;
@@ -427,7 +428,7 @@ public final class PipelineToCastNode {
                 case Any:
                     return CastToVectorNodeGen.create(step.preserveNonVector);
                 default:
-                    throw RInternalError.shouldNotReachHere(String.format("Unsupported type '%s' in AsVectorStep.", type));
+                    throw RInternalError.shouldNotReachHere(Utils.stringFormat("Unsupported type '%s' in AsVectorStep.", type));
             }
         }
 
diff --git a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/Utils.java b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/Utils.java
index 01108debdb..3e693cfc72 100644
--- a/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/Utils.java
+++ b/com.oracle.truffle.r.runtime/src/com/oracle/truffle/r/runtime/Utils.java
@@ -902,4 +902,9 @@ public final class Utils {
         return obj.toString();
     }
 
+    @TruffleBoundary
+    public static String stringFormat(String format, Object... objects) {
+        return String.format(format, objects);
+    }
+
 }
-- 
GitLab