From 44975293847c765b01900ba7a82d930251bef2a8 Mon Sep 17 00:00:00 2001
From: Tomas Stupka <tomas.stupka@oracle.com>
Date: Fri, 6 Apr 2018 00:46:28 +0200
Subject: [PATCH] fixed compiler warnings

---
 .../r/engine/interop/REnvironmentMR.java      |  4 +-
 .../builtin/fastr/FastRRegisterFunctions.java |  2 +-
 .../nodes/builtin/casts/CastForeignNode.java  |  2 +-
 .../r/test/tck/RTCKLanguageProvider.java      | 83 ++++++++++---------
 4 files changed, 48 insertions(+), 43 deletions(-)

diff --git a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/interop/REnvironmentMR.java b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/interop/REnvironmentMR.java
index 81632089f0..e636be2c8f 100644
--- a/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/interop/REnvironmentMR.java
+++ b/com.oracle.truffle.r.engine/src/com/oracle/truffle/r/engine/interop/REnvironmentMR.java
@@ -220,7 +220,7 @@ public class REnvironmentMR {
         protected abstract Object execute(VirtualFrame frame, TruffleObject receiver, Object identifier);
 
         @Specialization
-        protected Object access(VirtualFrame frame, REnvironment receiver, String identifier,
+        protected Object access(REnvironment receiver, String identifier,
                         @Cached("createKeyInfoNode()") REnvironmentKeyInfoImplNode keyInfo) {
             int info = keyInfo.execute(receiver, identifier);
             if (unknownIdentifier.profile(!KeyInfo.isExisting(info))) {
@@ -230,7 +230,7 @@ public class REnvironmentMR {
         }
 
         @TruffleBoundary
-        private boolean remove(REnvironment receiver, String identifier) {
+        private static boolean remove(REnvironment receiver, String identifier) {
             try {
                 return Rm.removeFromEnv(receiver, identifier, true);
             } catch (REnvironment.PutException ex) {
diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastRRegisterFunctions.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastRRegisterFunctions.java
index 307006798e..186e20383b 100644
--- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastRRegisterFunctions.java
+++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/fastr/FastRRegisterFunctions.java
@@ -104,7 +104,7 @@ public abstract class FastRRegisterFunctions extends RBuiltinNode.Arg4 {
     }
 
     @TruffleBoundary
-    private void assign(DotSymbol[] symbols, DLLInfo dllInfo, SymbolHandle[] symbolHandles, NativeSymbolType nst, REnvironment env) throws PutException {
+    private static void assign(DotSymbol[] symbols, DLLInfo dllInfo, SymbolHandle[] symbolHandles, NativeSymbolType nst, REnvironment env) throws PutException {
         for (int i = 0; i < symbols.length; i++) {
             SymbolInfo si = new SymbolInfo(dllInfo, symbols[i].name, symbolHandles[i]);
             RList symbolObject = si.createRSymbolObject(new RegisteredNativeSymbol(nst, symbols[i], dllInfo), true);
diff --git a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/casts/CastForeignNode.java b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/casts/CastForeignNode.java
index 687c4fce80..189ba3ef00 100644
--- a/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/casts/CastForeignNode.java
+++ b/com.oracle.truffle.r.nodes/src/com/oracle/truffle/r/nodes/builtin/casts/CastForeignNode.java
@@ -45,7 +45,7 @@ public final class CastForeignNode extends CastNode {
         }
     }
 
-    protected boolean isInteropScalar(Object obj) {
+    protected static boolean isInteropScalar(Object obj) {
         return obj instanceof RInteropScalar;
     }
 }
diff --git a/com.oracle.truffle.r.test.tck/src/com/oracle/truffle/r/test/tck/RTCKLanguageProvider.java b/com.oracle.truffle.r.test.tck/src/com/oracle/truffle/r/test/tck/RTCKLanguageProvider.java
index 9e79652192..755b718076 100644
--- a/com.oracle.truffle.r.test.tck/src/com/oracle/truffle/r/test/tck/RTCKLanguageProvider.java
+++ b/com.oracle.truffle.r.test.tck/src/com/oracle/truffle/r/test/tck/RTCKLanguageProvider.java
@@ -126,9 +126,12 @@ public final class RTCKLanguageProvider implements LanguageProvider {
         TypeDescriptor numOrBoolOrArrNumBool = TypeDescriptor.union(numOrBool, arrNumBool);
         TypeDescriptor numOrBoolOrNullOrArrNumBool = TypeDescriptor.union(numOrBoolOrNull, arrNumBool);
         TypeDescriptor boolOrArrBool = TypeDescriptor.union(TypeDescriptor.BOOLEAN, TypeDescriptor.array(TypeDescriptor.BOOLEAN));
-        TypeDescriptor strOrNumOrBool = TypeDescriptor.union(TypeDescriptor.STRING, numOrBool);
-        TypeDescriptor arrStrNumBool = TypeDescriptor.array(strOrNumOrBool);
-        TypeDescriptor strOrNumOrBoolOrArrStrNumBool = TypeDescriptor.union(strOrNumOrBool, arrStrNumBool);
+
+        // TODO cause occasional and more then occasional fails on gate builds
+        // TypeDescriptor strOrNumOrBool = TypeDescriptor.union(TypeDescriptor.STRING, numOrBool);
+        // TypeDescriptor arrStrNumBool = TypeDescriptor.array(strOrNumOrBool);
+        // TypeDescriptor strOrNumOrBoolOrArrStrNumBool = TypeDescriptor.union(strOrNumOrBool,
+        // arrStrNumBool);
 
         // +
         ops.add(createBinaryOperator(context, "+", numOrBoolOrArrNumBool, numOrBoolOrNullOrArrNumBool, numOrBoolOrNullOrArrNumBool,
@@ -143,7 +146,7 @@ public final class RTCKLanguageProvider implements LanguageProvider {
         ops.add(createBinaryOperator(context, "/", numOrBoolOrArrNumBool, numOrBoolOrNullOrArrNumBool, numOrBoolOrNullOrArrNumBool,
                         RResultVerifier.newBuilder(numOrBoolOrNullOrArrNumBool, numOrBoolOrNullOrArrNumBool).emptyArrayCheck().build()));
 
-        // TODO cause occasional and more then accasional fails on gate builds
+        // TODO cause occasional and more then occasional fails on gate builds
         // <
         // ops.add(createBinaryOperator(context, "<", boolOrArrBool, strOrNumOrBoolOrArrStrNumBool,
         // strOrNumOrBoolOrArrStrNumBool,
@@ -360,7 +363,7 @@ public final class RTCKLanguageProvider implements LanguageProvider {
         return opb.build();
     }
 
-    private InlineSnippet createInlineSnippet(Context context, String sourceName, int l1, int l2, String snippetName) {
+    private static InlineSnippet createInlineSnippet(Context context, String sourceName, int l1, int l2, String snippetName) {
         Snippet script = loadScript(context, sourceName, TypeDescriptor.ANY, null);
         String simpleName = sourceName.substring(sourceName.lastIndexOf('/') + 1);
         try {
@@ -447,7 +450,7 @@ public final class RTCKLanguageProvider implements LanguageProvider {
             private Builder(TypeDescriptor[] expectedParameterTypes) {
                 this.expectedParameterTypes = expectedParameterTypes;
                 chain = (valid, snippetRun) -> {
-                    ResultVerifier.getDefaultResultVerfier().accept(snippetRun);
+                    ResultVerifier.getDefaultResultVerifier().accept(snippetRun);
                     return null;
                 };
             }
@@ -482,42 +485,44 @@ public final class RTCKLanguageProvider implements LanguageProvider {
                 return this;
             }
 
+            // TODO cause occasional and more then occasional fails on gate builds
             // Todo: Is it R bug or should verifier handle this?
             // [1,"TEST"] < [1,2] works
             // [1,"TEST"] < [1,"TEST"] fails
-            Builder mixedArraysCheck() {
-                chain = new BiFunction<Boolean, SnippetRun, Void>() {
-                    private final BiFunction<Boolean, SnippetRun, Void> next = chain;
-
-                    @Override
-                    public Void apply(Boolean valid, SnippetRun sr) {
-                        if (valid && sr.getException() != null && areMixedArrays(sr.getParameters())) {
-                            return null;
-                        }
-                        return next.apply(valid, sr);
-                    }
-
-                    private boolean areMixedArrays(List<? extends Value> args) {
-                        for (Value arg : args) {
-                            if (!arg.hasArrayElements()) {
-                                return false;
-                            }
-                            boolean str = false;
-                            boolean num = false;
-                            for (int i = 0; i < arg.getArraySize(); i++) {
-                                TypeDescriptor td = TypeDescriptor.forValue(arg.getArrayElement(i));
-                                str |= TypeDescriptor.STRING.isAssignable(td);
-                                num |= TypeDescriptor.NUMBER.isAssignable(td) || TypeDescriptor.BOOLEAN.isAssignable(td);
-                            }
-                            if ((!str & !num) || (str ^ num)) {
-                                return false;
-                            }
-                        }
-                        return !args.isEmpty();
-                    }
-                };
-                return this;
-            }
+            // Builder mixedArraysCheck() {
+            // chain = new BiFunction<Boolean, SnippetRun, Void>() {
+            // private final BiFunction<Boolean, SnippetRun, Void> next = chain;
+            //
+            // @Override
+            // public Void apply(Boolean valid, SnippetRun sr) {
+            // if (valid && sr.getException() != null && areMixedArrays(sr.getParameters())) {
+            // return null;
+            // }
+            // return next.apply(valid, sr);
+            // }
+            //
+            // private boolean areMixedArrays(List<? extends Value> args) {
+            // for (Value arg : args) {
+            // if (!arg.hasArrayElements()) {
+            // return false;
+            // }
+            // boolean str = false;
+            // boolean num = false;
+            // for (int i = 0; i < arg.getArraySize(); i++) {
+            // TypeDescriptor td = TypeDescriptor.forValue(arg.getArrayElement(i));
+            // str |= TypeDescriptor.STRING.isAssignable(td);
+            // num |= TypeDescriptor.NUMBER.isAssignable(td) ||
+            // TypeDescriptor.BOOLEAN.isAssignable(td);
+            // }
+            // if ((!str & !num) || (str ^ num)) {
+            // return false;
+            // }
+            // }
+            // return !args.isEmpty();
+            // }
+            // };
+            // return this;
+            // }
 
             RResultVerifier build() {
                 return new RResultVerifier(expectedParameterTypes, chain);
-- 
GitLab