{ "_class" : "hudson.tasks.junit.CaseResult", "testActions" : [ ], "age" : 4, "className" : "org.eclipse.jdt.core.tests.compiler.regression.NullReferenceTest", "duration" : 0.872, "errorDetails" : "testBug486912PotNullInLoop_orig - Eclipse found error(s) but Javac did not find any.\u000a----------- Expected ------------\u000a\u000a------------ but was ------------\u000a----------\\n\u000a1. ERROR in test\\PotNullInLoop.java (at line 14)\\n\u000a potNull.hashCode(); // ERROR 1: pot null, but nothing reported\\n\u000a ^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a2. ERROR in test\\PotNullInLoop.java (at line 15)\\n\u000a ponNullOrNonNull.hashCode(); // ERROR 2: pot null, but nothing reported\\n\u000a ^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a3. ERROR in test\\PotNullInLoop.java (at line 27)\\n\u000a potNull.hashCode(); // ERROR 3 : pot null, but nothing reported\\n\u000a ^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a4. ERROR in test\\PotNullInLoop.java (at line 28)\\n\u000a ponNullOrNonNull.hashCode(); // ERROR 4: pot null, but nothing reported\\n\u000a ^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a5. ERROR in test\\PotNullInLoop.java (at line 41)\\n\u000a potNull.hashCode(); // OK: pot null, is reported\\n\u000a ^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a6. ERROR in test\\PotNullInLoop.java (at line 42)\\n\u000a ponNullOrNonNull.hashCode(); // OK: pot null, is reported\\n\u000a ^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a7. ERROR in test\\PotNullInLoop.java (at line 54)\\n\u000a potNull.hashCode(); // OK: pot null, is reported\\n\u000a ^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a8. ERROR in test\\PotNullInLoop.java (at line 55)\\n\u000a ponNullOrNonNull.hashCode(); // OK: pot null, is reported\\n\u000a ^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a9. ERROR in test\\PotNullInLoop.java (at line 67)\\n\u000a potNull.hashCode(); // OK: pot null, is reported\\n\u000a ^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a10. ERROR in test\\PotNullInLoop.java (at line 68)\\n\u000a ponNullOrNonNull.hashCode(); // OK: pot null, is reported\\n\u000a ^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a\u000a--------- Difference is ----------\u000a expected:<[]> but was:<[----------\\n\u000a1. ERROR in test\\PotNullInLoop.java (at line 14)\\n\u000a potNull.hashCode(); // ERROR 1: pot null, but nothing reported\\n\u000a ^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a2. ERROR in test\\PotNullInLoop.java (at line 15)\\n\u000a ponNullOrNonNull.hashCode(); // ERROR 2: pot null, but nothing reported\\n\u000a ^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a3. ERROR in test\\PotNullInLoop.java (at line 27)\\n\u000a potNull.hashCode(); // ERROR 3 : pot null, but nothing reported\\n\u000a ^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a4. ERROR in test\\PotNullInLoop.java (at line 28)\\n\u000a ponNullOrNonNull.hashCode(); // ERROR 4: pot null, but nothing reported\\n\u000a ^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a5. ERROR in test\\PotNullInLoop.java (at line 41)\\n\u000a potNull.hashCode(); // OK: pot null, is reported\\n\u000a ^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a6. ERROR in test\\PotNullInLoop.java (at line 42)\\n\u000a ponNullOrNonNull.hashCode(); // OK: pot null, is reported\\n\u000a ^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a7. ERROR in test\\PotNullInLoop.java (at line 54)\\n\u000a potNull.hashCode(); // OK: pot null, is reported\\n\u000a ^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a8. ERROR in test\\PotNullInLoop.java (at line 55)\\n\u000a ponNullOrNonNull.hashCode(); // OK: pot null, is reported\\n\u000a ^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a9. ERROR in test\\PotNullInLoop.java (at line 67)\\n\u000a potNull.hashCode(); // OK: pot null, is reported\\n\u000a ^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a10. ERROR in test\\PotNullInLoop.java (at line 68)\\n\u000a ponNullOrNonNull.hashCode(); // OK: pot null, is reported\\n\u000a ^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a]>", "errorStackTrace" : "junit.framework.ComparisonFailure: testBug486912PotNullInLoop_orig - Eclipse found error(s) but Javac did not find any.\u000a----------- Expected ------------\u000a\u000a------------ but was ------------\u000a----------\\n\u000a1. ERROR in test\\PotNullInLoop.java (at line 14)\\n\u000a\u0009potNull.hashCode(); // ERROR 1: pot null, but nothing reported\\n\u000a\u0009^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a2. ERROR in test\\PotNullInLoop.java (at line 15)\\n\u000a\u0009ponNullOrNonNull.hashCode(); // ERROR 2: pot null, but nothing reported\\n\u000a\u0009^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a3. ERROR in test\\PotNullInLoop.java (at line 27)\\n\u000a\u0009potNull.hashCode(); // ERROR 3 : pot null, but nothing reported\\n\u000a\u0009^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a4. ERROR in test\\PotNullInLoop.java (at line 28)\\n\u000a\u0009ponNullOrNonNull.hashCode(); // ERROR 4: pot null, but nothing reported\\n\u000a\u0009^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a5. ERROR in test\\PotNullInLoop.java (at line 41)\\n\u000a\u0009potNull.hashCode(); // OK: pot null, is reported\\n\u000a\u0009^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a6. ERROR in test\\PotNullInLoop.java (at line 42)\\n\u000a\u0009ponNullOrNonNull.hashCode(); // OK: pot null, is reported\\n\u000a\u0009^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a7. ERROR in test\\PotNullInLoop.java (at line 54)\\n\u000a\u0009potNull.hashCode(); // OK: pot null, is reported\\n\u000a\u0009^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a8. ERROR in test\\PotNullInLoop.java (at line 55)\\n\u000a\u0009ponNullOrNonNull.hashCode(); // OK: pot null, is reported\\n\u000a\u0009^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a9. ERROR in test\\PotNullInLoop.java (at line 67)\\n\u000a\u0009potNull.hashCode(); // OK: pot null, is reported\\n\u000a\u0009^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a10. ERROR in test\\PotNullInLoop.java (at line 68)\\n\u000a\u0009ponNullOrNonNull.hashCode(); // OK: pot null, is reported\\n\u000a\u0009^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a\u000a--------- Difference is ----------\u000a expected:<[]> but was:<[----------\\n\u000a1. ERROR in test\\PotNullInLoop.java (at line 14)\\n\u000a\u0009potNull.hashCode(); // ERROR 1: pot null, but nothing reported\\n\u000a\u0009^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a2. ERROR in test\\PotNullInLoop.java (at line 15)\\n\u000a\u0009ponNullOrNonNull.hashCode(); // ERROR 2: pot null, but nothing reported\\n\u000a\u0009^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a3. ERROR in test\\PotNullInLoop.java (at line 27)\\n\u000a\u0009potNull.hashCode(); // ERROR 3 : pot null, but nothing reported\\n\u000a\u0009^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a4. ERROR in test\\PotNullInLoop.java (at line 28)\\n\u000a\u0009ponNullOrNonNull.hashCode(); // ERROR 4: pot null, but nothing reported\\n\u000a\u0009^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a5. ERROR in test\\PotNullInLoop.java (at line 41)\\n\u000a\u0009potNull.hashCode(); // OK: pot null, is reported\\n\u000a\u0009^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a6. ERROR in test\\PotNullInLoop.java (at line 42)\\n\u000a\u0009ponNullOrNonNull.hashCode(); // OK: pot null, is reported\\n\u000a\u0009^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a7. ERROR in test\\PotNullInLoop.java (at line 54)\\n\u000a\u0009potNull.hashCode(); // OK: pot null, is reported\\n\u000a\u0009^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a8. ERROR in test\\PotNullInLoop.java (at line 55)\\n\u000a\u0009ponNullOrNonNull.hashCode(); // OK: pot null, is reported\\n\u000a\u0009^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a9. ERROR in test\\PotNullInLoop.java (at line 67)\\n\u000a\u0009potNull.hashCode(); // OK: pot null, is reported\\n\u000a\u0009^^^^^^^\\n\u000aNull pointer access: The variable potNull can only be null at this location\\n\u000a----------\\n\u000a10. ERROR in test\\PotNullInLoop.java (at line 68)\\n\u000a\u0009ponNullOrNonNull.hashCode(); // OK: pot null, is reported\\n\u000a\u0009^^^^^^^^^^^^^^^^\\n\u000aPotential null pointer access: The variable ponNullOrNonNull may be null at this location\\n\u000a----------\\n\u000a]>\u000a\u0009at org.eclipse.jdt.core.tests.junit.extension.TestCase.assertStringEquals(TestCase.java:260)\u000a\u0009at org.eclipse.jdt.core.tests.junit.extension.TestCase.assertEquals(TestCase.java:236)\u000a\u0009at org.eclipse.jdt.core.tests.compiler.regression.AbstractRegressionTest.runJavac(AbstractRegressionTest.java:2044)\u000a\u0009at org.eclipse.jdt.core.tests.compiler.regression.AbstractRegressionTest.runTest(AbstractRegressionTest.java:2814)\u000a\u0009at org.eclipse.jdt.core.tests.compiler.regression.AbstractRegressionTest.runTest(AbstractRegressionTest.java:2539)\u000a\u0009at org.eclipse.jdt.core.tests.compiler.regression.AbstractRegressionTest.runNegativeTest(AbstractRegressionTest.java:2113)\u000a\u0009at org.eclipse.jdt.core.tests.compiler.regression.AbstractRegressionTest.runNegativeTest(AbstractRegressionTest.java:2102)\u000a\u0009at org.eclipse.jdt.core.tests.compiler.regression.NullReferenceTest.testBug486912PotNullInLoop_orig(NullReferenceTest.java:17750)\u000a", "failedSince" : 6, "name" : "testBug486912PotNullInLoop_orig - 1.8", "properties" : None, "skipped" : False, "skippedMessage" : None, "status" : "FAILED", "stderr" : "----------------------------------------\u000a", "stdout" : "org.eclipse.jdt.core.tests.compiler.regression.NullReferenceTest#testBug486912PotNullInLoop_orig - 1.8\u000atest/PotNullInLoop.java [\u000apackage test;\u000a\u000apublic class PotNullInLoop {\u000a\u0009boolean b;\u000a\u000a\u0009public void testDoWhile1() {\u000a\u0009\u0009Object o1 = null;\u000a\u0009\u0009Object o2 = new Object();\u000a\u0009\u0009Object potNonNull = b ? o2 : o2;\u000a\u0009\u0009Object potNull = b ? o1 : o1;\u000a\u0009\u0009Object ponNullOrNonNull = b ? potNull : potNonNull;\u000a\u0009\u0009do {\u000a\u0009\u0009\u0009potNonNull.hashCode(); // OK\u000a\u0009\u0009\u0009potNull.hashCode(); // ERROR 1: pot null, but nothing reported\u000a\u0009\u0009\u0009ponNullOrNonNull.hashCode(); // ERROR 2: pot null, but nothing reported\u000a\u0009\u0009} while (false);\u000a\u0009}\u000a\u000a\u0009public void testWhileWithBreak() {\u000a\u0009\u0009Object o1 = null;\u000a\u0009\u0009Object o2 = new Object();\u000a\u0009\u0009Object potNonNull = b ? o2 : o2;\u000a\u0009\u0009Object potNull = b ? o1 : o1;\u000a\u0009\u0009Object ponNullOrNonNull = b ? potNull : potNonNull;\u000a\u0009\u0009while (b) {\u000a\u0009\u0009\u0009potNonNull.hashCode(); // OK\u000a\u0009\u0009\u0009potNull.hashCode(); // ERROR 3 : pot null, but nothing reported\u000a\u0009\u0009\u0009ponNullOrNonNull.hashCode(); // ERROR 4: pot null, but nothing reported\u000a\u0009\u0009\u0009break;\u000a\u0009\u0009}\u000a\u0009}\u000a\u000a\u0009public void testWhile() {\u000a\u0009\u0009Object o1 = null;\u000a\u0009\u0009Object o2 = new Object();\u000a\u0009\u0009Object potNonNull = b ? o2 : o2;\u000a\u0009\u0009Object potNull = b ? o1 : o1;\u000a\u0009\u0009Object ponNullOrNonNull = b ? potNull : potNonNull;\u000a\u0009\u0009while (b) {\u000a\u0009\u0009\u0009potNonNull.hashCode(); // OK\u000a\u0009\u0009\u0009potNull.hashCode(); // OK: pot null, is reported\u000a\u0009\u0009\u0009ponNullOrNonNull.hashCode(); // OK: pot null, is reported\u000a\u0009\u0009}\u000a\u0009}\u000a\u000a\u0009public void testFor() {\u000a\u0009\u0009Object o1 = null;\u000a\u0009\u0009Object o2 = new Object();\u000a\u0009\u0009Object potNonNull = b ? o2 : o2;\u000a\u0009\u0009Object potNull = b ? o1 : o1;\u000a\u0009\u0009Object ponNullOrNonNull = b ? potNull : potNonNull;\u000a\u0009\u0009for (int i = 0; i < 1; i++) {\u000a\u0009\u0009\u0009potNonNull.hashCode(); // OK\u000a\u0009\u0009\u0009potNull.hashCode(); // OK: pot null, is reported\u000a\u0009\u0009\u0009ponNullOrNonNull.hashCode(); // OK: pot null, is reported\u000a\u0009\u0009}\u000a\u0009}\u000a\u000a\u0009public void testForEach() {\u000a\u0009\u0009Object o1 = null;\u000a\u0009\u0009Object o2 = new Object();\u000a\u0009\u0009Object potNonNull = b ? o2 : o2;\u000a\u0009\u0009Object potNull = b ? o1 : o1;\u000a\u0009\u0009Object ponNullOrNonNull = b ? potNull : potNonNull;\u000a\u0009\u0009for (int i = 0; i < 1; i++) {\u000a\u0009\u0009\u0009potNonNull.hashCode(); // OK\u000a\u0009\u0009\u0009potNull.hashCode(); // OK: pot null, is reported\u000a\u0009\u0009\u0009ponNullOrNonNull.hashCode(); // OK: pot null, is reported\u000a\u0009\u0009}\u000a\u0009}\u000a\u000a}\u000a\u000a]\u000a\u000a\u000aFull results sent to /tmp/comptest/run.1514610271420/1.8.0_131_20171230_000432.txt\u000a" }