Failed
org.eclipse.jdt.core.tests.compiler.regression.NullReferenceTest.testBug325342b - 1.8 (from org.eclipse.jdt.core.tests.compiler.regression.TestAll)
Error Message
testBug325342b - Eclipse found error(s) but Javac did not find any. ----------- Expected ------------ ------------ but was ------------ ----------\n 1. ERROR in Test.java (at line 4)\n if (a!=null) {\n ^\n Null comparison always yields false: The variable a can only be null at this location\n ----------\n 2. WARNING in Test.java (at line 4)\n if (a!=null) {\n System.out.println("a is not null");\n } else{\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 3. ERROR in Test.java (at line 10)\n if (b!=null) {\n ^\n Redundant null check: The variable b cannot be null at this location\n ----------\n 4. WARNING in Test.java (at line 12)\n } else{\n System.out.println("a is null");\n }\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 5. ERROR in Test.java (at line 16)\n if (c.equals(a)) {\n ^\n Null pointer access: The variable c can only be null at this location\n ----------\n --------- Difference is ---------- expected:<[]> but was:<[----------\n 1. ERROR in Test.java (at line 4)\n if (a!=null) {\n ^\n Null comparison always yields false: The variable a can only be null at this location\n ----------\n 2. WARNING in Test.java (at line 4)\n if (a!=null) {\n System.out.println("a is not null");\n } else{\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 3. ERROR in Test.java (at line 10)\n if (b!=null) {\n ^\n Redundant null check: The variable b cannot be null at this location\n ----------\n 4. WARNING in Test.java (at line 12)\n } else{\n System.out.println("a is null");\n }\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 5. ERROR in Test.java (at line 16)\n if (c.equals(a)) {\n ^\n Null pointer access: The variable c can only be null at this location\n ----------\n ]>
Stacktrace
junit.framework.ComparisonFailure: testBug325342b - Eclipse found error(s) but Javac did not find any. ----------- Expected ------------ ------------ but was ------------ ----------\n 1. ERROR in Test.java (at line 4)\n if (a!=null) {\n ^\n Null comparison always yields false: The variable a can only be null at this location\n ----------\n 2. WARNING in Test.java (at line 4)\n if (a!=null) {\n System.out.println("a is not null");\n } else{\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 3. ERROR in Test.java (at line 10)\n if (b!=null) {\n ^\n Redundant null check: The variable b cannot be null at this location\n ----------\n 4. WARNING in Test.java (at line 12)\n } else{\n System.out.println("a is null");\n }\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 5. ERROR in Test.java (at line 16)\n if (c.equals(a)) {\n ^\n Null pointer access: The variable c can only be null at this location\n ----------\n --------- Difference is ---------- expected:<[]> but was:<[----------\n 1. ERROR in Test.java (at line 4)\n if (a!=null) {\n ^\n Null comparison always yields false: The variable a can only be null at this location\n ----------\n 2. WARNING in Test.java (at line 4)\n if (a!=null) {\n System.out.println("a is not null");\n } else{\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 3. ERROR in Test.java (at line 10)\n if (b!=null) {\n ^\n Redundant null check: The variable b cannot be null at this location\n ----------\n 4. WARNING in Test.java (at line 12)\n } else{\n System.out.println("a is null");\n }\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 5. ERROR in Test.java (at line 16)\n if (c.equals(a)) {\n ^\n Null pointer access: The variable c can only be null at this location\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:2220) at org.eclipse.jdt.core.tests.compiler.regression.NullReferenceTest.testBug325342b(NullReferenceTest.java:14452)
Standard Output
org.eclipse.jdt.core.tests.compiler.regression.NullReferenceTest#testBug325342b - 1.8 Test.java [ public class Test { void foo(Object a, Object b, Object c) { assert a == null; if (a!=null) { System.out.println("a is not null"); } else{ System.out.println("a is null"); } assert b != null; if (b!=null) { System.out.println("a is not null"); } else{ System.out.println("a is null"); } assert c == null; if (c.equals(a)) { System.out.println(""); } else{ System.out.println(""); } } public static void main(String[] args){ Test test = new Test(); test.foo(null,null,null); } } ] Full results sent to /tmp/comptest/run.1514610271420/1.8.0_131_20171230_000432.txt
Standard Error
----------------------------------------