diff --git a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/InstanceofPrimaryPatternTest.java b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/InstanceofPrimaryPatternTest.java index 0cc98c3f720..f41995cc9b7 100644 --- a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/InstanceofPrimaryPatternTest.java +++ b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/InstanceofPrimaryPatternTest.java @@ -92,6 +92,24 @@ public void test001() { options); } public void test002() { + String expectedDiagnostics = this.complianceLevel < ClassFileConstants.JDK20 ? + "----------\n" + + "1. ERROR in X.java (at line 3)\n" + + " if (obj instanceof (String s)) {\n" + + " ^\n" + + "Syntax error on token \"(\", delete this token\n" + + "----------\n" + + "2. ERROR in X.java (at line 3)\n" + + " if (obj instanceof (String s)) {\n" + + " ^\n" + + "Syntax error on token \")\", delete this token\n" + + "----------\n" : + "----------\n" + + "1. ERROR in X.java (at line 3)\n" + + " if (obj instanceof (String s)) {\n" + + " ^^^^^^^^^^\n" + + "Syntax error on token \"instanceof\", ReferenceType expected after this token\n" + + "----------\n"; runNegativeTest( new String[] { "X.java", @@ -106,19 +124,49 @@ public void test002() { " }\n" + "}\n", }, - "----------\n" + - "1. ERROR in X.java (at line 3)\n" + - " if (obj instanceof (String s)) {\n" + - " ^\n" + - "Syntax error on token \"(\", delete this token\n" + - "----------\n" + - "2. ERROR in X.java (at line 3)\n" + - " if (obj instanceof (String s)) {\n" + - " ^\n" + - "Syntax error on token \")\", delete this token\n" + - "----------\n"); + expectedDiagnostics); } public void test003() { + + String expectedDiagnostics = this.complianceLevel < ClassFileConstants.JDK20 ? + "----------\n" + + "1. ERROR in X.java (at line 3)\n" + + " if (obj instanceof ((String s))) {\n" + + " ^^^^^^^^^^\n" + + "Syntax error, insert \"Type\" to complete InstanceofClassic\n" + + "----------\n" + + "2. ERROR in X.java (at line 3)\n" + + " if (obj instanceof ((String s))) {\n" + + " ^^^^^^^^^^\n" + + "Syntax error, insert \") Statement\" to complete BlockStatements\n" + + "----------\n" + + "3. ERROR in X.java (at line 3)\n" + + " if (obj instanceof ((String s))) {\n" + + " ^^^^^^\n" + + "Syntax error on token \"String\", ( expected after this token\n" + + "----------\n" + + "4. ERROR in X.java (at line 3)\n" + + " if (obj instanceof ((String s))) {\n" + + " ^\n" + + "Syntax error, insert \"AssignmentOperator Expression\" to complete Assignment\n" + + "----------\n" + + "5. ERROR in X.java (at line 3)\n" + + " if (obj instanceof ((String s))) {\n" + + " ^\n" + + "Syntax error, insert \";\" to complete Statement\n" + + "----------\n" : + "----------\n" + + "1. ERROR in X.java (at line 3)\n" + + " if (obj instanceof ((String s))) {\n" + + " ^\n" + + "Syntax error on token \"(\", invalid ReferenceType\n" + + "----------\n" + + "2. ERROR in X.java (at line 3)\n" + + " if (obj instanceof ((String s))) {\n" + + " ^\n" + + "Syntax error on token \")\", delete this token\n" + + "----------\n"; + runNegativeTest( new String[] { "X.java", @@ -133,32 +181,7 @@ public void test003() { " }\n" + "}\n", }, - "----------\n" + - "1. ERROR in X.java (at line 3)\n" + - " if (obj instanceof ((String s))) {\n" + - " ^^^^^^^^^^\n" + - "Syntax error, insert \"Type\" to complete InstanceofClassic\n" + - "----------\n" + - "2. ERROR in X.java (at line 3)\n" + - " if (obj instanceof ((String s))) {\n" + - " ^^^^^^^^^^\n" + - "Syntax error, insert \") Statement\" to complete BlockStatements\n" + - "----------\n" + - "3. ERROR in X.java (at line 3)\n" + - " if (obj instanceof ((String s))) {\n" + - " ^^^^^^\n" + - "Syntax error on token \"String\", ( expected after this token\n" + - "----------\n" + - "4. ERROR in X.java (at line 3)\n" + - " if (obj instanceof ((String s))) {\n" + - " ^\n" + - "Syntax error, insert \"AssignmentOperator Expression\" to complete Assignment\n" + - "----------\n" + - "5. ERROR in X.java (at line 3)\n" + - " if (obj instanceof ((String s))) {\n" + - " ^\n" + - "Syntax error, insert \";\" to complete Statement\n" + - "----------\n"); + expectedDiagnostics); } public void test007() { runNegativeTest(