Failed
org.eclipse.jdt.core.tests.compiler.regression.NullReferenceTest.testBug253896d - 1.8 (from org.eclipse.jdt.core.tests.compiler.regression.TestAll)
Error Message
testBug253896d - Eclipse found error(s) but Javac did not find any. ----------- Expected ------------ ------------ but was ------------ ----------\n 1. ERROR in X.java (at line 8)\n if(f1 == 1)\n ^^\n Null pointer access: This expression of type Integer is null but requires auto-unboxing\n ----------\n 2. ERROR in X.java (at line 11)\n int abc = (f2 != 1)? 1 : 0;\n ^^\n Null pointer access: This expression of type Integer is null but requires auto-unboxing\n ----------\n 3. ERROR in X.java (at line 13)\n if(f3 == null)\n ^^\n Redundant null check: The variable f3 can only be null at this location\n ----------\n 4. ERROR in X.java (at line 16)\n if(f4 != null)\n ^^\n Null comparison always yields false: The variable f4 can only be null at this location\n ----------\n 5. WARNING in X.java (at line 17)\n System.out.println("f4 is not null");\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 6. ERROR in X.java (at line 18)\n if(outer == 1) {}\n ^^^^^\n Null pointer access: This expression of type Integer is null but requires auto-unboxing\n ----------\n 7. ERROR in X.java (at line 19)\n if(param == 1) {}\n ^^^^^\n Potential null pointer access: This expression of type Integer may be null but requires auto-unboxing\n ----------\n --------- Difference is ---------- expected:<[]> but was:<[----------\n 1. ERROR in X.java (at line 8)\n if(f1 == 1)\n ^^\n Null pointer access: This expression of type Integer is null but requires auto-unboxing\n ----------\n 2. ERROR in X.java (at line 11)\n int abc = (f2 != 1)? 1 : 0;\n ^^\n Null pointer access: This expression of type Integer is null but requires auto-unboxing\n ----------\n 3. ERROR in X.java (at line 13)\n if(f3 == null)\n ^^\n Redundant null check: The variable f3 can only be null at this location\n ----------\n 4. ERROR in X.java (at line 16)\n if(f4 != null)\n ^^\n Null comparison always yields false: The variable f4 can only be null at this location\n ----------\n 5. WARNING in X.java (at line 17)\n System.out.println("f4 is not null");\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 6. ERROR in X.java (at line 18)\n if(outer == 1) {}\n ^^^^^\n Null pointer access: This expression of type Integer is null but requires auto-unboxing\n ----------\n 7. ERROR in X.java (at line 19)\n if(param == 1) {}\n ^^^^^\n Potential null pointer access: This expression of type Integer may be null but requires auto-unboxing\n ----------\n ]>
Stacktrace
junit.framework.ComparisonFailure: testBug253896d - Eclipse found error(s) but Javac did not find any. ----------- Expected ------------ ------------ but was ------------ ----------\n 1. ERROR in X.java (at line 8)\n if(f1 == 1)\n ^^\n Null pointer access: This expression of type Integer is null but requires auto-unboxing\n ----------\n 2. ERROR in X.java (at line 11)\n int abc = (f2 != 1)? 1 : 0;\n ^^\n Null pointer access: This expression of type Integer is null but requires auto-unboxing\n ----------\n 3. ERROR in X.java (at line 13)\n if(f3 == null)\n ^^\n Redundant null check: The variable f3 can only be null at this location\n ----------\n 4. ERROR in X.java (at line 16)\n if(f4 != null)\n ^^\n Null comparison always yields false: The variable f4 can only be null at this location\n ----------\n 5. WARNING in X.java (at line 17)\n System.out.println("f4 is not null");\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 6. ERROR in X.java (at line 18)\n if(outer == 1) {}\n ^^^^^\n Null pointer access: This expression of type Integer is null but requires auto-unboxing\n ----------\n 7. ERROR in X.java (at line 19)\n if(param == 1) {}\n ^^^^^\n Potential null pointer access: This expression of type Integer may be null but requires auto-unboxing\n ----------\n --------- Difference is ---------- expected:<[]> but was:<[----------\n 1. ERROR in X.java (at line 8)\n if(f1 == 1)\n ^^\n Null pointer access: This expression of type Integer is null but requires auto-unboxing\n ----------\n 2. ERROR in X.java (at line 11)\n int abc = (f2 != 1)? 1 : 0;\n ^^\n Null pointer access: This expression of type Integer is null but requires auto-unboxing\n ----------\n 3. ERROR in X.java (at line 13)\n if(f3 == null)\n ^^\n Redundant null check: The variable f3 can only be null at this location\n ----------\n 4. ERROR in X.java (at line 16)\n if(f4 != null)\n ^^\n Null comparison always yields false: The variable f4 can only be null at this location\n ----------\n 5. WARNING in X.java (at line 17)\n System.out.println("f4 is not null");\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 6. ERROR in X.java (at line 18)\n if(outer == 1) {}\n ^^^^^\n Null pointer access: This expression of type Integer is null but requires auto-unboxing\n ----------\n 7. ERROR in X.java (at line 19)\n if(param == 1) {}\n ^^^^^\n Potential null pointer access: This expression of type Integer may be null but requires auto-unboxing\n ----------\n ]> at org.eclipse.jdt.core.tests.junit.extension.TestCase.assertStringEquals(TestCase.java:260) at org.eclipse.jdt.core.tests.junit.extension.TestCase.assertEquals(TestCase.java:236) at org.eclipse.jdt.core.tests.compiler.regression.AbstractRegressionTest.runJavac(AbstractRegressionTest.java:2044) at org.eclipse.jdt.core.tests.compiler.regression.AbstractRegressionTest.runTest(AbstractRegressionTest.java:2814) at org.eclipse.jdt.core.tests.compiler.regression.AbstractRegressionTest.runTest(AbstractRegressionTest.java:2539) at org.eclipse.jdt.core.tests.compiler.regression.AbstractRegressionTest.runNegativeTest(AbstractRegressionTest.java:2113) at org.eclipse.jdt.core.tests.compiler.regression.AbstractRegressionTest.runNegativeTest(AbstractRegressionTest.java:2102) at org.eclipse.jdt.core.tests.compiler.regression.NullReferenceTest.testBug253896d(NullReferenceTest.java:12174)
Standard Output
org.eclipse.jdt.core.tests.compiler.regression.NullReferenceTest#testBug253896d - 1.8 X.java [ public class X { public void foo(Integer param) { Integer outer = null; if (param == null) {} try {} finally { Integer f1 = null; if(f1 == 1) System.out.println("f1 is 1"); Integer f2 = null; int abc = (f2 != 1)? 1 : 0; Float f3 = null; if(f3 == null) System.out.println("f3 is null"); Byte f4 = null; if(f4 != null) System.out.println("f4 is not null"); if(outer == 1) {} if(param == 1) {} } } } ] Full results sent to /tmp/comptest/run.1514610271420/1.8.0_131_20171230_000432.txt
Standard Error
----------------------------------------