Failed
org.eclipse.jdt.core.tests.compiler.regression.NullReferenceTestAsserts.testBug127575l - 1.8 (from org.eclipse.jdt.core.tests.compiler.regression.TestAll)
Error Message
testBug127575l - 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 9)\n a = null;\n ^\n Redundant assignment: The variable a can only be null at this location\n ----------\n 4. ERROR in Test.java (at line 10)\n if (a== null) {}\n ^\n Redundant null check: The variable a can only be null at this location\n ----------\n 5. ERROR in Test.java (at line 12)\n if (b!=null) {\n ^\n Redundant null check: The variable b cannot be null at this location\n ----------\n 6. WARNING in Test.java (at line 14)\n } else{\n System.out.println("b is null");\n }\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 7. ERROR in Test.java (at line 18)\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 9)\n a = null;\n ^\n Redundant assignment: The variable a can only be null at this location\n ----------\n 4. ERROR in Test.java (at line 10)\n if (a== null) {}\n ^\n Redundant null check: The variable a can only be null at this location\n ----------\n 5. ERROR in Test.java (at line 12)\n if (b!=null) {\n ^\n Redundant null check: The variable b cannot be null at this location\n ----------\n 6. WARNING in Test.java (at line 14)\n } else{\n System.out.println("b is null");\n }\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 7. ERROR in Test.java (at line 18)\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: testBug127575l - 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 9)\n a = null;\n ^\n Redundant assignment: The variable a can only be null at this location\n ----------\n 4. ERROR in Test.java (at line 10)\n if (a== null) {}\n ^\n Redundant null check: The variable a can only be null at this location\n ----------\n 5. ERROR in Test.java (at line 12)\n if (b!=null) {\n ^\n Redundant null check: The variable b cannot be null at this location\n ----------\n 6. WARNING in Test.java (at line 14)\n } else{\n System.out.println("b is null");\n }\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 7. ERROR in Test.java (at line 18)\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 9)\n a = null;\n ^\n Redundant assignment: The variable a can only be null at this location\n ----------\n 4. ERROR in Test.java (at line 10)\n if (a== null) {}\n ^\n Redundant null check: The variable a can only be null at this location\n ----------\n 5. ERROR in Test.java (at line 12)\n if (b!=null) {\n ^\n Redundant null check: The variable b cannot be null at this location\n ----------\n 6. WARNING in Test.java (at line 14)\n } else{\n System.out.println("b is null");\n }\n ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n Dead code\n ----------\n 7. ERROR in Test.java (at line 18)\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:2188) at org.eclipse.jdt.core.tests.compiler.regression.AbstractRegressionTest.runNegativeTest(AbstractRegressionTest.java:2179) at org.eclipse.jdt.core.tests.compiler.regression.NullReferenceTestAsserts.testBug127575l(NullReferenceTestAsserts.java:606)
Standard Output
org.eclipse.jdt.core.tests.compiler.regression.NullReferenceTestAsserts#testBug127575l - 1.8 Test.java [ public class Test { void foo(Object a, Object b, Object c) { org.eclipse.core.runtime.Assert.isLegal( a == null); if (a!=null) { System.out.println("a is not null"); } else{ System.out.println("a is null"); } a = null; if (a== null) {} org.eclipse.core.runtime.Assert.isLegal(b != null); if (b!=null) { System.out.println("b is not null"); } else{ System.out.println("b is null"); } org.eclipse.core.runtime.Assert.isLegal(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
----------------------------------------