--- a/test/fmw/gtest/include/gtest/internal/gtest-port.h Thu Sep 29 16:45:08 2016 +0000
+++ b/test/fmw/gtest/include/gtest/internal/gtest-port.h Fri Sep 30 02:52:36 2016 -0700
@@ -1586,12 +1586,13 @@
GTEST_API_ size_t GetThreadCount();
// Passing non-POD classes through ellipsis (...) crashes the ARM
-// compiler and generates a warning in Sun Studio. The Nokia Symbian
+// compiler and generates a warning in Sun Studio before 12u4. The Nokia Symbian
// and the IBM XL C/C++ compiler try to instantiate a copy constructor
// for objects passed through ellipsis (...), failing for uncopyable
// objects. We define this to ensure that only POD is passed through
// ellipsis on these systems.
-#if defined(__SYMBIAN32__) || defined(__IBMCPP__) || defined(__SUNPRO_CC)
+#if defined(__SYMBIAN32__) || defined(__IBMCPP__) || \
+ (defined(__SUNPRO_CC) && __SUNPRO_CC < 0x5130)
// We lose support for NULL detection where the compiler doesn't like
// passing non-POD classes through ellipsis (...).
# define GTEST_ELLIPSIS_NEEDS_POD_ 1
--- a/test/lib/jdk/test/lib/Platform.java Thu Sep 29 16:45:08 2016 +0000
+++ b/test/lib/jdk/test/lib/Platform.java Fri Sep 30 02:52:36 2016 -0700
@@ -28,6 +28,9 @@
public class Platform {
public static final String vmName = System.getProperty("java.vm.name");
public static final String vmInfo = System.getProperty("java.vm.info");
+ private static final String osVersion = System.getProperty("os.version");
+ private static int osVersionMajor = -1;
+ private static int osVersionMinor = -1;
private static final String osName = System.getProperty("os.name");
private static final String dataModel = System.getProperty("sun.arch.data.model");
private static final String vmVersion = System.getProperty("java.vm.version");
@@ -112,6 +115,35 @@
return osName;
}
+ // Os version support.
+ private static void init_version() {
+ try {
+ final String[] tokens = osVersion.split("\\.");
+ if (tokens.length > 0) {
+ osVersionMajor = Integer.parseInt(tokens[0]);
+ if (tokens.length > 1) {
+ osVersionMinor = Integer.parseInt(tokens[1]);
+ }
+ }
+ } catch (NumberFormatException e) {
+ osVersionMajor = osVersionMinor = 0;
+ }
+ }
+
+ // Returns major version number from os.version system property.
+ // E.g. 5 on Solaris 10 and 3 on SLES 11.3 (for the linux kernel version).
+ public static int getOsVersionMajor() {
+ if (osVersionMajor == -1) init_version();
+ return osVersionMajor;
+ }
+
+ // Returns minor version number from os.version system property.
+ // E.g. 10 on Solaris 10 and 0 on SLES 11.3 (for the linux kernel version).
+ public static int getOsVersionMinor() {
+ if (osVersionMinor == -1) init_version();
+ return osVersionMinor;
+ }
+
public static boolean isDebugBuild() {
return (jdkDebug.toLowerCase().contains("debug"));
}
--- a/test/lib/jdk/test/lib/cli/predicate/AndPredicate.java Thu Sep 29 16:45:08 2016 +0000
+++ b/test/lib/jdk/test/lib/cli/predicate/AndPredicate.java Fri Sep 30 02:52:36 2016 -0700
@@ -28,14 +28,22 @@
public class AndPredicate implements BooleanSupplier {
private final BooleanSupplier a;
private final BooleanSupplier b;
+ private final BooleanSupplier c;
public AndPredicate(BooleanSupplier a, BooleanSupplier b) {
this.a = a;
this.b = b;
+ this.c = () -> true; // Boolean.TRUE::booleanValue
+ }
+
+ public AndPredicate(BooleanSupplier a, BooleanSupplier b, BooleanSupplier c) {
+ this.a = a;
+ this.b = b;
+ this.c = c;
}
@Override
public boolean getAsBoolean() {
- return a.getAsBoolean() && b.getAsBoolean();
+ return a.getAsBoolean() && b.getAsBoolean() && c.getAsBoolean();
}
}