diff --git a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/ExpectedTestOutput.test b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/ExpectedTestOutput.test
index b49b656694ed6fce1933bf8245d1670d4377e5f6..78a3639e84a9cc6129a18ff01a5a2b53b2b5fc1f 100644
--- a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/ExpectedTestOutput.test
+++ b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/ExpectedTestOutput.test
@@ -141590,11 +141590,11 @@ $longValue
 [1] TRUE
 
 ##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testAllTypes#
-#if (!any(R.version$engine == "FastR")) { "true127a32767214748364721474836471.7976931348623157E3082.0testString" } else { to <- new.external(new.java.class('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestClass')); to$allTypesMethod(TRUE,127,"a",32767,2147483647,2147483647,1.7976931348623157E308,2.0,"testString") }
+#if (!any(R.version$engine == "FastR")) { "true127a32767214748364721474836471.7976931348623157E3082.0testString" } else { to <- new.external(new.java.class('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestClass')); to$allTypesMethod(TRUE, as.external.byte(127), as.external.char("a"), as.external.short(32767), 2147483647L,  as.external.long(2147483647), 1.7976931348623157E308, as.external.float(2.0), "testString") }
 [1] "true127a32767214748364721474836471.7976931348623157E3082.0testString"
 
 ##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testAllTypes#
-#if (!any(R.version$engine == "FastR")) { "true127a32767214748364721474836471.7976931348623157E3082.0testString" } else { to <- new.external(new.java.class('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestClass')); to$allTypesStaticMethod(TRUE,127,"a",32767,2147483647,2147483647,1.7976931348623157E308,2.0,"testString") }
+#if (!any(R.version$engine == "FastR")) { "true127a32767214748364721474836471.7976931348623157E3082.0testString" } else { to <- new.external(new.java.class('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestClass')); to$allTypesStaticMethod(TRUE, as.external.byte(127), as.external.char("a"), as.external.short(32767), 2147483647L,  as.external.long(2147483647), 1.7976931348623157E308, as.external.float(2.0), "testString") }
 [1] "true127a32767214748364721474836471.7976931348623157E3082.0testString"
 
 ##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testArrayAsParameter#
@@ -143364,6 +143364,23 @@ NULL
 #if (!any(R.version$engine == "FastR")) { as.character(list()) } else { to <- new.external(new.java.class('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestClass'));as.character(to$listEmpty); }
 character(0)
 
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testElseIf#
+#if (!any(R.version$engine == "FastR")) { c(1,1,1) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); ifelse(ta$integerArray, 1, 2) }
+[1] 1 1 1
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testElseIf#
+#if (!any(R.version$engine == "FastR")) { c(1,2,1) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); ifelse(ta$booleanArray, 1, 2) }
+[1] 1 2 1
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testElseIf#
+#if (!any(R.version$engine == "FastR")) { c(NA, NA, NA) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); ifelse(ta$stringArray, 1, 2) }
+[1] NA NA NA
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testElseIf#
+#if (!any(R.version$engine == "FastR")) { cat('Error in as.logical(test) :', '<<<NEWLINE>>>', ' no method for coercing this external object to a vector', '<<<NEWLINE>>>') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); ifelse(ta) }
+Error in as.logical(test) :
+  no method for coercing this external object to a vector
+
 ##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testException#
 #if (!any(R.version$engine == "FastR")) { cat('Error in new.external(Class, ...) :', '<<<NEWLINE>>>', ' Foreign function failed: java.io.IOException', '<<<NEWLINE>>>') } else { to <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestExceptionsClass', 'java.io.IOException'); }
 Error in new.external(Class, ...) :
@@ -150265,6 +150282,868 @@ Error in as.external.char(97L, 1) :
 #if (!any(R.version$engine == "FastR")) { 32767 } else { v <- as.external.short(32767); v; }
 [1] 32767
 
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$booleanArray, ta$booleanList))) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$byteArray, ta$byteList))) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$doubleArray, ta$doubleList))) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$floatArray, ta$floatList))) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$integerArray, ta$integerList))) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$longArray, ta$longList))) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$shortArray, ta$shortList))) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c('a', 'aa', 'aaa'), ta$stringArray, ta$stringList))) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$stringArray, ta$stringList))) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$stringArray, ta$stringList))) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$stringArray, ta$stringList))) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$charArray)) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$charObjectArray)) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$mixedObjectArray)) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'character' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$stringArray)) }
+[1] "character"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$booleanArray, ta$booleanList))) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$byteArray, ta$byteList))) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$integerArray, ta$integerList))) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$shortArray, ta$shortList))) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$byteArray, ta$byteList))) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$integerArray, ta$integerList))) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$shortArray, ta$shortList))) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$byteArray)) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$byteObjectArray)) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$integerArray)) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$integerObjectArray)) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$onlyIntegerObjectArray)) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$shortArray)) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'integer' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$shortObjectArray)) }
+[1] "integer"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$booleanArray, ta$booleanList))) }
+[1] "logical"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$booleanArray)) }
+[1] "logical"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'logical' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$booleanObjectArray)) }
+[1] "logical"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$booleanArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$booleanObjectArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$byteArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$byteObjectArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$charArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$charObjectArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$doubleArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$doubleObjectArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$floatArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$floatObjectArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$integerArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$integerObjectArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$longArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$longObjectArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$shortArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$shortObjectArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'matrix' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$stringArray2)) }
+[1] "matrix"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$booleanArray, ta$booleanList))) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$integerArray, ta$integerList))) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$longArray, ta$longList))) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 1.2, 1.3), ta$shortArray, ta$shortList))) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 2.1, 3.1), ta$byteArray, ta$byteList))) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 2.1, 3.1), ta$doubleArray, ta$doubleList))) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1.1, 2.1, 3.1), ta$floatArray, ta$floatList))) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$doubleArray, ta$doubleList))) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$floatArray, ta$floatList))) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(1L, 2L, 3L), ta$longArray, ta$longList))) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$doubleArray, ta$doubleList))) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$floatArray, ta$floatList))) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(list(c(TRUE, FALSE, TRUE), ta$longArray, ta$longList))) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$doubleArray)) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$doubleObjectArray)) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$floatArray)) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$floatObjectArray)) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$longArray)) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$longObjectArray)) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { 'numeric' } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); class(unlist(ta$onlyLongObjectArray)) }
+[1] "numeric"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { TRUE } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); l<-list(ta, ta); ul <- unlist(l); identical(l, ul) }
+[1] TRUE
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { TRUE } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); tal <- unlist(ta); identical(ta, tal) }
+[1] TRUE
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('1', 'a', '1') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$mixedObjectArray) }
+[1] "1" "a" "1"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$stringArray, ta$stringList)) }
+[1] "a"   "aa"  "aaa" "a"   "b"   "c"   "a"   "b"   "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$stringArray, ta$stringList), recursive=FALSE) }
+[1] "a"   "aa"  "aaa" "a"   "b"   "c"   "a"   "b"   "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$byteArray, ta$byteList)) }
+[1] "a"   "aa"  "aaa" "1"   "2"   "3"   "1"   "2"   "3"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$byteArray, ta$byteList), recursive=FALSE) }
+[1] "a"   "aa"  "aaa" "1"   "2"   "3"   "1"   "2"   "3"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$integerArray, ta$integerList)) }
+[1] "a"   "aa"  "aaa" "1"   "2"   "3"   "1"   "2"   "3"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$integerArray, ta$integerList), recursive=FALSE) }
+[1] "a"   "aa"  "aaa" "1"   "2"   "3"   "1"   "2"   "3"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$longArray, ta$longList)) }
+[1] "a"   "aa"  "aaa" "1"   "2"   "3"   "1"   "2"   "3"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$longArray, ta$longList), recursive=FALSE) }
+[1] "a"   "aa"  "aaa" "1"   "2"   "3"   "1"   "2"   "3"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$shortArray, ta$shortList)) }
+[1] "a"   "aa"  "aaa" "1"   "2"   "3"   "1"   "2"   "3"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$shortArray, ta$shortList), recursive=FALSE) }
+[1] "a"   "aa"  "aaa" "1"   "2"   "3"   "1"   "2"   "3"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$doubleArray, ta$doubleList)) }
+[1] "a"   "aa"  "aaa" "1.1" "1.2" "1.3" "1.1" "1.2" "1.3"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$doubleArray, ta$doubleList), recursive=FALSE) }
+[1] "a"   "aa"  "aaa" "1.1" "1.2" "1.3" "1.1" "1.2" "1.3"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$floatArray, ta$floatList)) }
+[1] "a"                "aa"               "aaa"              "1.10000002384186"
+[5] "1.20000004768372" "1.29999995231628" "1.10000002384186" "1.20000004768372"
+[9] "1.29999995231628"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$floatArray, ta$floatList), recursive=FALSE) }
+[1] "a"                "aa"               "aaa"              "1.10000002384186"
+[5] "1.20000004768372" "1.29999995231628" "1.10000002384186" "1.20000004768372"
+[9] "1.29999995231628"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$booleanArray, ta$booleanList)) }
+[1] "a"     "aa"    "aaa"   "TRUE"  "FALSE" "TRUE"  "TRUE"  "FALSE" "TRUE"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'aa', 'aaa', TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c('a', 'aa', 'aaa'), ta$booleanArray, ta$booleanList), recursive=FALSE) }
+[1] "a"     "aa"    "aaa"   "TRUE"  "FALSE" "TRUE"  "TRUE"  "FALSE" "TRUE"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charArray) }
+[1] "a" "b" "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charArray, recursive=FALSE) }
+[1] "a" "b" "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charObjectArray) }
+[1] "a" "b" "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charObjectArray, recursive=FALSE) }
+[1] "a" "b" "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringArray) }
+[1] "a" "b" "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringArray, recursive=FALSE) }
+[1] "a" "b" "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charArray2, recursive=FALSE) }
+[1] "a" "b" "c" "a" "b" "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charObjectArray2, recursive=FALSE) }
+[1] "a" "b" "c" "a" "b" "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c('a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringArray2, recursive=FALSE) }
+[1] "a" "b" "c" "a" "b" "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteArray) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteArray, recursive=FALSE) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteObjectArray) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteObjectArray, recursive=FALSE) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerArray) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerArray, recursive=FALSE) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerObjectArray) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerObjectArray, recursive=FALSE) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longArray) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longArray, recursive=FALSE) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longObjectArray) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longObjectArray, recursive=FALSE) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$onlyIntegerObjectArray) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$onlyLongObjectArray) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortArray) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortArray, recursive=FALSE) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortObjectArray) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortObjectArray, recursive=FALSE) }
+[1] 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteArray2, recursive=FALSE) }
+[1] 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteObjectArray2, recursive=FALSE) }
+[1] 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerArray2, recursive=FALSE) }
+[1] 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerObjectArray2, recursive=FALSE) }
+[1] 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longArray2, recursive=FALSE) }
+[1] 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longObjectArray2, recursive=FALSE) }
+[1] 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortArray2, recursive=FALSE) }
+[1] 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortObjectArray2, recursive=FALSE) }
+[1] 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleArray) }
+[1] 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleArray, recursive=FALSE) }
+[1] 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleObjectArray) }
+[1] 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleObjectArray, recursive=FALSE) }
+[1] 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatArray) }
+[1] 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatArray, recursive=FALSE) }
+[1] 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatObjectArray) }
+[1] 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatObjectArray, recursive=FALSE) }
+[1] 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$stringArray, ta$stringList)) }
+[1] "1.1" "1.2" "1.3" "a"   "b"   "c"   "a"   "b"   "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$stringArray, ta$stringList), recursive=FALSE) }
+[1] "1.1" "1.2" "1.3" "a"   "b"   "c"   "a"   "b"   "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$integerArray, ta$integerList)) }
+[1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$integerArray, ta$integerList), recursive=FALSE) }
+[1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$longArray, ta$longList)) }
+[1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$longArray, ta$longList), recursive=FALSE) }
+[1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$shortArray, ta$shortList)) }
+[1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$shortArray, ta$shortList), recursive=FALSE) }
+[1] 1.1 1.2 1.3 1.0 2.0 3.0 1.0 2.0 3.0
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleArray2, recursive=FALSE) }
+[1] 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleObjectArray2, recursive=FALSE) }
+[1] 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatArray2, recursive=FALSE) }
+[1] 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatObjectArray2, recursive=FALSE) }
+[1] 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$booleanArray, ta$booleanList)) }
+[1] 1.1 1.2 1.3 1.0 0.0 1.0 1.0 0.0 1.0
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 1.2, 1.3, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 1.2, 1.3), ta$booleanArray, ta$booleanList), recursive=FALSE) }
+[1] 1.1 1.2 1.3 1.0 0.0 1.0 1.0 0.0 1.0
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$byteArray, ta$byteList)) }
+[1] 1.1 2.1 3.1 1.0 2.0 3.0 1.0 2.0 3.0
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$byteArray, ta$byteList), recursive=FALSE) }
+[1] 1.1 2.1 3.1 1.0 2.0 3.0 1.0 2.0 3.0
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$doubleArray, ta$doubleList)) }
+[1] 1.1 2.1 3.1 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$doubleArray, ta$doubleList), recursive=FALSE) }
+[1] 1.1 2.1 3.1 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$floatArray, ta$floatList)) }
+[1] 1.1 2.1 3.1 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1.1, 2.1, 3.1, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1.1, 2.1, 3.1), ta$floatArray, ta$floatList), recursive=FALSE) }
+[1] 1.1 2.1 3.1 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$stringArray, ta$stringList)) }
+[1] "1" "2" "3" "a" "b" "c" "a" "b" "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$stringArray, ta$stringList), recursive=FALSE) }
+[1] "1" "2" "3" "a" "b" "c" "a" "b" "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$byteArray, ta$byteList)) }
+[1] 1 2 3 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$byteArray, ta$byteList), recursive=FALSE) }
+[1] 1 2 3 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$integerArray, ta$integerList)) }
+[1] 1 2 3 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$integerArray, ta$integerList), recursive=FALSE) }
+[1] 1 2 3 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$longArray, ta$longList)) }
+[1] 1 2 3 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$longArray, ta$longList), recursive=FALSE) }
+[1] 1 2 3 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$shortArray, ta$shortList)) }
+[1] 1 2 3 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$shortArray, ta$shortList), recursive=FALSE) }
+[1] 1 2 3 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$doubleArray, ta$doubleList)) }
+[1] 1.0 2.0 3.0 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$doubleArray, ta$doubleList), recursive=FALSE) }
+[1] 1.0 2.0 3.0 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$floatArray, ta$floatList)) }
+[1] 1.0 2.0 3.0 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$floatArray, ta$floatList), recursive=FALSE) }
+[1] 1.0 2.0 3.0 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$booleanArray, ta$booleanList)) }
+[1] 1 2 3 1 0 1 1 0 1
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(1L, 2L, 3L, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(1L, 2L, 3L), ta$booleanArray, ta$booleanList), recursive=FALSE) }
+[1] 1 2 3 1 0 1 1 0 1
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanArray) }
+[1]  TRUE FALSE  TRUE
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanArray, recursive=FALSE) }
+[1]  TRUE FALSE  TRUE
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanObjectArray) }
+[1]  TRUE FALSE  TRUE
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanObjectArray, recursive=FALSE) }
+[1]  TRUE FALSE  TRUE
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$stringArray, ta$stringList)) }
+[1] "TRUE"  "FALSE" "TRUE"  "a"     "b"     "c"     "a"     "b"     "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 'a', 'b', 'c', 'a', 'b', 'c') } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$stringArray, ta$stringList), recursive=FALSE) }
+[1] "TRUE"  "FALSE" "TRUE"  "a"     "b"     "c"     "a"     "b"     "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$byteArray, ta$byteList)) }
+[1] 1 0 1 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$byteArray, ta$byteList), recursive=FALSE) }
+[1] 1 0 1 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$integerArray, ta$integerList)) }
+[1] 1 0 1 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$integerArray, ta$integerList), recursive=FALSE) }
+[1] 1 0 1 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$longArray, ta$longList)) }
+[1] 1 0 1 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$longArray, ta$longList), recursive=FALSE) }
+[1] 1 0 1 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$shortArray, ta$shortList)) }
+[1] 1 0 1 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1, 2, 3, 1, 2, 3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$shortArray, ta$shortList), recursive=FALSE) }
+[1] 1 0 1 1 2 3 1 2 3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$doubleArray, ta$doubleList)) }
+[1] 1.0 0.0 1.0 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1.1, 1.2, 1.3, 1.1, 1.2, 1.3) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$doubleArray, ta$doubleList), recursive=FALSE) }
+[1] 1.0 0.0 1.0 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$floatArray, ta$floatList)) }
+[1] 1.0 0.0 1.0 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, 1.100000023841858, 1.2000000476837158, 1.2999999523162842, 1.100000023841858, 1.2000000476837158, 1.2999999523162842) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$floatArray, ta$floatList), recursive=FALSE) }
+[1] 1.0 0.0 1.0 1.1 1.2 1.3 1.1 1.2 1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanArray2, recursive=FALSE) }
+[1]  TRUE FALSE  TRUE  TRUE FALSE  TRUE
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanObjectArray2, recursive=FALSE) }
+[1]  TRUE FALSE  TRUE  TRUE FALSE  TRUE
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$booleanArray, ta$booleanList)) }
+[1]  TRUE FALSE  TRUE  TRUE FALSE  TRUE  TRUE FALSE  TRUE
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE, TRUE, FALSE, TRUE) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(list(c(TRUE, FALSE, TRUE), ta$booleanArray, ta$booleanList), recursive=FALSE) }
+[1]  TRUE FALSE  TRUE  TRUE FALSE  TRUE  TRUE FALSE  TRUE
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c('a', 'b', 'c', 'a', 'b', 'c'), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charArray2) }
+     [,1] [,2] [,3]
+[1,] "a"  "b"  "c"
+[2,] "a"  "b"  "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c('a', 'b', 'c', 'a', 'b', 'c'), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$charObjectArray2) }
+     [,1] [,2] [,3]
+[1,] "a"  "b"  "c"
+[2,] "a"  "b"  "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c('a', 'b', 'c', 'a', 'b', 'c'), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$stringArray2) }
+     [,1] [,2] [,3]
+[1,] "a"  "b"  "c"
+[2,] "a"  "b"  "c"
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(1, 2, 3, 1, 2, 3), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteArray2) }
+     [,1] [,2] [,3]
+[1,]    1    2    3
+[2,]    1    2    3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(1, 2, 3, 1, 2, 3), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$byteObjectArray2) }
+     [,1] [,2] [,3]
+[1,]    1    2    3
+[2,]    1    2    3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(1, 2, 3, 1, 2, 3), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerArray2) }
+     [,1] [,2] [,3]
+[1,]    1    2    3
+[2,]    1    2    3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(1, 2, 3, 1, 2, 3), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$integerObjectArray2) }
+     [,1] [,2] [,3]
+[1,]    1    2    3
+[2,]    1    2    3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(1, 2, 3, 1, 2, 3), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longArray2) }
+     [,1] [,2] [,3]
+[1,]    1    2    3
+[2,]    1    2    3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(1, 2, 3, 1, 2, 3), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$longObjectArray2) }
+     [,1] [,2] [,3]
+[1,]    1    2    3
+[2,]    1    2    3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(1, 2, 3, 1, 2, 3), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortArray2) }
+     [,1] [,2] [,3]
+[1,]    1    2    3
+[2,]    1    2    3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(1, 2, 3, 1, 2, 3), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$shortObjectArray2) }
+     [,1] [,2] [,3]
+[1,]    1    2    3
+[2,]    1    2    3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleArray2) }
+     [,1] [,2] [,3]
+[1,]  1.1  1.2  1.3
+[2,]  1.1  1.2  1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$doubleObjectArray2) }
+     [,1] [,2] [,3]
+[1,]  1.1  1.2  1.3
+[2,]  1.1  1.2  1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatArray2) }
+     [,1] [,2] [,3]
+[1,]  1.1  1.2  1.3
+[2,]  1.1  1.2  1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(1.1, 1.2, 1.3, 1.1, 1.2, 1.3), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$floatObjectArray2) }
+     [,1] [,2] [,3]
+[1,]  1.1  1.2  1.3
+[2,]  1.1  1.2  1.3
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanArray2) }
+     [,1]  [,2] [,3]
+[1,] TRUE FALSE TRUE
+[2,] TRUE FALSE TRUE
+
+##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testUnlist#
+#if (!any(R.version$engine == "FastR")) { matrix(c(TRUE, FALSE, TRUE, TRUE, FALSE, TRUE), nrow=2, ncol=3, byrow=T) } else { ta <- new('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestArraysClass'); unlist(ta$booleanObjectArray2) }
+     [,1]  [,2] [,3]
+[1,] TRUE FALSE TRUE
+[2,] TRUE FALSE TRUE
+
 ##com.oracle.truffle.r.test.library.fastr.TestJavaInterop.testWhile#Output.IgnoreErrorContext#
 #if (!any(R.version$engine == "FastR")) { cat('Error in if (T) print(\'OK\') :  argument is not interpretable as logical', '<<<NEWLINE>>>') } else { to <- new.external(new.java.class('com.oracle.truffle.r.test.library.fastr.TestJavaInterop$TestClass'));while(to) print('OK') }
 Error in if (T) print('OK') :  argument is not interpretable as logical
diff --git a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/library/fastr/TestJavaInterop.java b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/library/fastr/TestJavaInterop.java
index ec56b2f70c3600b52b2a369f6e6decf0d9ebd789..748316d584bf2d14f21496fc05b8fe504527aa38 100644
--- a/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/library/fastr/TestJavaInterop.java
+++ b/com.oracle.truffle.r.test/src/com/oracle/truffle/r/test/library/fastr/TestJavaInterop.java
@@ -33,7 +33,6 @@ import java.util.List;
 
 import org.junit.Assert;
 import org.junit.Before;
-import org.junit.Ignore;
 import org.junit.Test;
 
 import com.oracle.truffle.r.nodes.builtin.base.printer.DoubleVectorPrinter;
@@ -42,6 +41,7 @@ import com.oracle.truffle.r.runtime.RType;
 import com.oracle.truffle.r.test.TestBase;
 import com.oracle.truffle.r.test.library.fastr.TestJavaInterop.TestClass.TestPOJO;
 import java.lang.reflect.Constructor;
+import org.junit.Ignore;
 
 public class TestJavaInterop extends TestBase {
 
@@ -440,8 +440,29 @@ public class TestJavaInterop extends TestBase {
         double d = Double.MAX_VALUE;
         float f = 2f;
         String s = "testString";
-        assertEvalFastR(CREATE_TRUFFLE_OBJECT + " to$" + method + "(" + getRValuesAsString(bo, bt, c, sh, i, l, d, f, s) + ")",
-                        getRValue("" + bo + bt + c + sh + i + l + d + f + s));
+        StringBuilder sb = new StringBuilder();
+        sb.append(method);
+        sb.append("(");
+        sb.append(getRValue(bo));
+        sb.append(", as.external.byte(");
+        sb.append(getRValue(bt));
+        sb.append("), as.external.char(");
+        sb.append(getRValue(c));
+        sb.append("), as.external.short(");
+        sb.append(getRValue(sh));
+        sb.append("), ");
+        sb.append(getRValue(i));
+        sb.append("L, ");
+        sb.append(" as.external.long(");
+        sb.append(getRValue(l));
+        sb.append("), ");
+        sb.append(getRValue(d));
+        sb.append(", as.external.float(");
+        sb.append(getRValue(f));
+        sb.append("), ");
+        sb.append(getRValue(s));
+        sb.append(")");
+        assertEvalFastR(CREATE_TRUFFLE_OBJECT + " to$" + sb.toString(), getRValue("" + bo + bt + c + sh + i + l + d + f + s));
     }
 
     @Test
@@ -678,9 +699,7 @@ public class TestJavaInterop extends TestBase {
     private static final String CREATE_TEST_ARRAYS = "ta <- new('" + TestArraysClass.class.getName() + "');";
 
     @Test
-    @Ignore("FIXME: ArrayList isn't allowed Truffle interop type")
     public void testUnlist() throws NoSuchFieldException, IllegalArgumentException, IllegalAccessException {
-
         assertEvalFastR(CREATE_TEST_ARRAYS + " tal <- unlist(ta); identical(ta, tal)", "TRUE");
         assertEvalFastR(CREATE_TEST_ARRAYS + " l<-list(ta, ta); ul <- unlist(l); identical(l, ul)", "TRUE");
 
@@ -704,8 +723,10 @@ public class TestJavaInterop extends TestBase {
         assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(ta$mixedObjectArray)", "c('1', 'a', '1')");
         assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(ta$mixedObjectArray))", "'character'");
 
-        assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(ta$mixedIntegerList)", "c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)");
-        assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(ta$mixedIntegerList))", "'integer'");
+        // FIXME: ArrayList isn't allowed Truffle interop type
+        // assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(ta$mixedIntegerList)", "c(1, 2, 3, 4, 5, 6,
+        // 7, 8, 9, 10, 11, 12)");
+        // assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(ta$mixedIntegerList))", "'integer'");
 
         testForeingObjectInListUnlist("byte", new String[]{"TRUE", "FALSE", "TRUE"}, "integer");
         testForeingObjectInListUnlist("byte", new String[]{"1L", "2L", "3L"}, "integer");
@@ -753,7 +774,8 @@ public class TestJavaInterop extends TestBase {
         if (!fieldType.equals("string")) {
             testForeingObjectUnlist(fieldType + "ObjectArray", result, clazz);
         }
-        testForeingObjectUnlist(fieldType + "List", result, clazz);
+        // FIXME: ArrayList isn't allowed Truffle interop type
+        // testForeingObjectUnlist(fieldType + "List", result, clazz);
     }
 
     private void testForeingObjectUnlist(String fieldPrefix, String result, String clazz) {
@@ -805,41 +827,54 @@ public class TestJavaInterop extends TestBase {
         assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field + "Array, ta$" + field + "List), recursive=FALSE)",
                         "c(" + resultInVector + ", " + testFieldArrayResult + ", " + testFieldListResult + ")");
 
-        String[] ra = testFieldArrayResult.split(",");
-        StringBuilder sb = new StringBuilder();
-        for (i = 0; i < ra.length; i++) {
-            String s = ra[i].trim();
-            sb.append(s).append(", ").append(s);
-            if (i < ra.length - 1) {
-                sb.append(", ");
-            }
-        }
-        String testFieldMatrixResult = sb.toString();
-        assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field + "Array2, ta$" + field + "List2))",
-                        "c(" + resultInVector + ", " + testFieldMatrixResult + ", " + testFieldListResult + ", " + testFieldListResult + ")");
-        assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(list(" + mixWithVector + ", ta$" + field + "Array2, ta$" + field + "List2)))", "'" + clazz + "'");
-        assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field + "Array2, ta$" + field + "List2), recursive=FALSE)",
-                        "cat(" + resultInList +
-                                        "'[[4]]','\n','[external object]','\n\n','[[5]]','\n','[external object]','\n\n','[[6]]','\n','[external object]','\n\n','[[7]]','\n','[external object]','\n\n', sep='')");
-
-        ra = testFieldArrayResult.split(",");
-        sb = new StringBuilder();
-        for (i = 0; i < ra.length; i++) {
-            String s = ra[i].trim();
-            sb.append(s).append(", ").append(s).append(", ").append(s).append(", ").append(s);
-            if (i < ra.length - 1) {
-                sb.append(", ");
-            }
-        }
-        testFieldArrayResult = sb.toString();
-        assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field + "Array3, ta$" + field + "List3))",
-                        "c(" + resultInVector + ", " +
-                                        testFieldArrayResult + ", " +
-                                        testFieldListResult + ", " + testFieldListResult + ", " + testFieldListResult + ", " + testFieldListResult + ")");
-        assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(list(" + mixWithVector + ", ta$" + field + "Array3, ta$" + field + "List3)))", "'" + clazz + "'");
-        assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field + "Array3, ta$" + field + "List3), recursive=FALSE)",
-                        "cat(" + resultInList +
-                                        "'[[4]]','\n','[external object]','\n\n','[[5]]','\n','[external object]','\n\n','[[6]]','\n','[external object]','\n\n','[[7]]','\n','[external object]','\n\n', sep='')");
+        // FIXME: ArrayList isn't allowed Truffle interop type
+        // String[] ra = testFieldArrayResult.split(",");
+        // StringBuilder sb = new StringBuilder();
+        // for (i = 0; i < ra.length; i++) {
+        // String s = ra[i].trim();
+        // sb.append(s).append(", ").append(s);
+        // if (i < ra.length - 1) {
+        // sb.append(", ");
+        // }
+        // }
+        // String testFieldMatrixResult = sb.toString();
+        // assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field +
+        // "Array2, ta$" + field + "List2))",
+        // "c(" + resultInVector + ", " + testFieldMatrixResult + ", " + testFieldListResult + ", "
+        // + testFieldListResult + ")");
+        // assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(list(" + mixWithVector + ", ta$" +
+        // field + "Array2, ta$" + field + "List2)))", "'" + clazz + "'");
+        // assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field +
+        // "Array2, ta$" + field + "List2), recursive=FALSE)",
+        // "cat(" + resultInList +
+        // "'[[4]]','\n','[external object]','\n\n','[[5]]','\n','[external
+        // object]','\n\n','[[6]]','\n','[external object]','\n\n','[[7]]','\n','[external
+        // object]','\n\n', sep='')");
+        //
+        // ra = testFieldArrayResult.split(",");
+        // sb = new StringBuilder();
+        // for (i = 0; i < ra.length; i++) {
+        // String s = ra[i].trim();
+        // sb.append(s).append(", ").append(s).append(", ").append(s).append(", ").append(s);
+        // if (i < ra.length - 1) {
+        // sb.append(", ");
+        // }
+        // }
+        // testFieldArrayResult = sb.toString();
+        // assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field +
+        // "Array3, ta$" + field + "List3))",
+        // "c(" + resultInVector + ", " +
+        // testFieldArrayResult + ", " +
+        // testFieldListResult + ", " + testFieldListResult + ", " + testFieldListResult + ", " +
+        // testFieldListResult + ")");
+        // assertEvalFastR(CREATE_TEST_ARRAYS + " class(unlist(list(" + mixWithVector + ", ta$" +
+        // field + "Array3, ta$" + field + "List3)))", "'" + clazz + "'");
+        // assertEvalFastR(CREATE_TEST_ARRAYS + " unlist(list(" + mixWithVector + ", ta$" + field +
+        // "Array3, ta$" + field + "List3), recursive=FALSE)",
+        // "cat(" + resultInList +
+        // "'[[4]]','\n','[external object]','\n\n','[[5]]','\n','[external
+        // object]','\n\n','[[6]]','\n','[external object]','\n\n','[[7]]','\n','[external
+        // object]','\n\n', sep='')");
     }
 
     private static String getTestFieldValuesAsResult(String name) throws NoSuchFieldException, IllegalArgumentException, IllegalAccessException {
@@ -1110,15 +1145,15 @@ public class TestJavaInterop extends TestBase {
     }
 
     @Test
-    @Ignore("FIXME: ArrayList isn't allowed Truffle interop type")
     public void testElseIf() throws IllegalArgumentException {
         assertEvalFastR(CREATE_TEST_ARRAYS + " ifelse(ta)", errorIn("as.logical(test)", "no method for coercing this external object to a vector"));
         assertEvalFastR(CREATE_TEST_ARRAYS + " ifelse(ta$booleanArray, 1, 2)", "c(1,2,1)");
-        assertEvalFastR(CREATE_TEST_ARRAYS + " ifelse(ta$booleanList, 1, 2)", "c(1,2,1)");
         assertEvalFastR(CREATE_TEST_ARRAYS + " ifelse(ta$integerArray, 1, 2)", "c(1,1,1)");
-        assertEvalFastR(CREATE_TEST_ARRAYS + " ifelse(ta$integerList, 1, 2)", "c(1,1,1)");
         assertEvalFastR(CREATE_TEST_ARRAYS + " ifelse(ta$stringArray, 1, 2)", "c(NA, NA, NA)");
-        assertEvalFastR(CREATE_TEST_ARRAYS + " ifelse(ta$stringList, 1, 2)", "c(NA, NA, NA)");
+        // FIXME: ArrayList isn't allowed Truffle interop type
+        // assertEvalFastR(CREATE_TEST_ARRAYS + " ifelse(ta$booleanList, 1, 2)", "c(1,2,1)");
+        // assertEvalFastR(CREATE_TEST_ARRAYS + " ifelse(ta$integerList, 1, 2)", "c(1,1,1)");
+        // assertEvalFastR(CREATE_TEST_ARRAYS + " ifelse(ta$stringList, 1, 2)", "c(NA, NA, NA)");
     }
 
     @Test