### Eclipse Workspace Patch 1.0 #P org.eclipse.jdt.core Index: compiler/org/eclipse/jdt/internal/compiler/impl/CompilerOptions.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/impl/CompilerOptions.java,v retrieving revision 1.231 diff -u -r1.231 CompilerOptions.java --- compiler/org/eclipse/jdt/internal/compiler/impl/CompilerOptions.java 8 Sep 2010 12:55:49 -0000 1.231 +++ compiler/org/eclipse/jdt/internal/compiler/impl/CompilerOptions.java 16 Sep 2010 11:27:07 -0000 @@ -265,11 +265,6 @@ public long originalComplianceLevel; /** Java source level, refers to a JDK version, e.g. {@link ClassFileConstants#JDK1_4} */ public long sourceLevel; - /** Original Java source level, refers to a JDK version, e.g. {@link ClassFileConstants#JDK1_4} - * Usually same as the field sourceLevel, though the latter could deviate to create temporary sandbox - * modes during reconcile operations. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=323633 - * */ - public long originalSourceLevel; /** VM target level, refers to a JDK version, e.g. {@link ClassFileConstants#JDK1_4} */ public long targetJDK; /** Source encoding format */ @@ -964,7 +959,7 @@ // by default only lines and source attributes are generated. this.produceDebugAttributes = ClassFileConstants.ATTR_SOURCE | ClassFileConstants.ATTR_LINES; this.complianceLevel = this.originalComplianceLevel = ClassFileConstants.JDK1_4; // by default be compliant with 1.4 - this.sourceLevel = this.originalSourceLevel = ClassFileConstants.JDK1_3; //1.3 source behavior by default + this.sourceLevel = ClassFileConstants.JDK1_3; //1.3 source behavior by default this.targetJDK = ClassFileConstants.JDK1_2; // default generates for JVM1.2 this.defaultEncoding = null; // will use the platform default encoding @@ -1131,7 +1126,7 @@ } if ((optionValue = optionsMap.get(OPTION_Source)) != null) { long level = versionToJdkLevel(optionValue); - if (level != 0) this.sourceLevel = this.originalSourceLevel = level; + if (level != 0) this.sourceLevel = level; } if ((optionValue = optionsMap.get(OPTION_TargetPlatform)) != null) { long level = versionToJdkLevel(optionValue); Index: compiler/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java,v retrieving revision 1.124 diff -u -r1.124 BinaryTypeBinding.java --- compiler/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java 8 Sep 2010 12:55:49 -0000 1.124 +++ compiler/org/eclipse/jdt/internal/compiler/lookup/BinaryTypeBinding.java 16 Sep 2010 11:27:08 -0000 @@ -149,7 +149,8 @@ this.fPackage = packageBinding; this.fileName = binaryType.getFileName(); - char[] typeSignature = environment.globalOptions.originalSourceLevel >= ClassFileConstants.JDK1_5 ? binaryType.getGenericSignature() : null; + // Unconditionally internalize generics see https://bugs.eclipse.org/bugs/show_bug.cgi?id=324850 + char[] typeSignature = binaryType.getGenericSignature(); this.typeVariables = typeSignature != null && typeSignature.length > 0 && typeSignature[0] == '<' ? null // is initialized in cachePartsFrom (called from LookupEnvironment.createBinaryTypeFrom())... must set to null so isGenericType() answers true : Binding.NO_TYPE_VARIABLES; @@ -260,12 +261,10 @@ } } - long sourceLevel = this.environment.globalOptions.originalSourceLevel; - char[] typeSignature = null; - if (sourceLevel >= ClassFileConstants.JDK1_5) { - typeSignature = binaryType.getGenericSignature(); - this.tagBits |= binaryType.getTagBits(); - } + long sourceLevel = this.environment.globalOptions.sourceLevel; + char[] typeSignature = binaryType.getGenericSignature(); + this.tagBits |= binaryType.getTagBits(); + char[][][] missingTypeNames = binaryType.getMissingTypeNames(); if (typeSignature == null) { char[] superclassName = binaryType.getSuperclassName(); @@ -360,7 +359,7 @@ int size = iFields.length; if (size > 0) { this.fields = new FieldBinding[size]; - boolean use15specifics = sourceLevel >= ClassFileConstants.JDK1_5; + boolean use15specifics = true; boolean hasRestrictedAccess = hasRestrictedAccess(); int firstAnnotatedFieldIndex = -1; for (int i = 0; i < size; i++) { @@ -411,7 +410,7 @@ AnnotationBinding[][] paramAnnotations = null; TypeBinding returnType = null; - final boolean use15specifics = sourceLevel >= ClassFileConstants.JDK1_5; + final boolean use15specifics = true; char[] methodSignature = use15specifics ? method.getGenericSignature() : null; if (methodSignature == null) { // no generics char[] methodDescriptor = method.getMethodDescriptor(); // of the form (I[Ljava/jang/String;)V Index: compiler/org/eclipse/jdt/internal/compiler/lookup/ClassScope.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/ClassScope.java,v retrieving revision 1.180 diff -u -r1.180 ClassScope.java --- compiler/org/eclipse/jdt/internal/compiler/lookup/ClassScope.java 26 Jul 2010 16:21:40 -0000 1.180 +++ compiler/org/eclipse/jdt/internal/compiler/lookup/ClassScope.java 16 Sep 2010 11:27:09 -0000 @@ -385,8 +385,8 @@ SourceTypeBinding sourceType = this.referenceContext.binding; TypeParameter[] typeParameters = this.referenceContext.typeParameters; - // do not construct type variables if source < 1.5 - if (typeParameters == null || compilerOptions().sourceLevel < ClassFileConstants.JDK1_5) { + // If type parameters exist at all, unconditionally internalize them. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=324850 + if (typeParameters == null || typeParameters.length == 0) { sourceType.typeVariables = Binding.NO_TYPE_VARIABLES; return; } Index: compiler/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java,v retrieving revision 1.106 diff -u -r1.106 LookupEnvironment.java --- compiler/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java 26 Jul 2010 16:21:40 -0000 1.106 +++ compiler/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java 16 Sep 2010 11:27:10 -0000 @@ -1322,9 +1322,8 @@ } public MethodVerifier newMethodVerifier() { - return this.globalOptions.sourceLevel < ClassFileConstants.JDK1_5 - ? new MethodVerifier(this) - : new MethodVerifier15(this); // covariance only if sourceLevel is >= 1.5 + // Always use MethodVerifier15, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=324850 + return new MethodVerifier15(this); } public void releaseClassFiles(org.eclipse.jdt.internal.compiler.ClassFile[] classFiles) { Index: compiler/org/eclipse/jdt/internal/compiler/lookup/MethodScope.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/MethodScope.java,v retrieving revision 1.75 diff -u -r1.75 MethodScope.java --- compiler/org/eclipse/jdt/internal/compiler/lookup/MethodScope.java 13 Sep 2010 13:26:20 -0000 1.75 +++ compiler/org/eclipse/jdt/internal/compiler/lookup/MethodScope.java 16 Sep 2010 11:27:10 -0000 @@ -329,8 +329,8 @@ } TypeParameter[] typeParameters = method.typeParameters(); - // do not construct type variables if source < 1.5 - if (typeParameters == null || compilerOptions().sourceLevel < ClassFileConstants.JDK1_5) { + // If type parameters exist at all, unconditionally internalize them. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=324850 + if (typeParameters == null || typeParameters.length == 0) { method.binding.typeVariables = Binding.NO_TYPE_VARIABLES; } else { method.binding.typeVariables = createTypeVariables(typeParameters, method.binding); Index: compiler/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.java,v retrieving revision 1.115 diff -u -r1.115 MethodVerifier15.java --- compiler/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.java 26 Aug 2010 15:01:12 -0000 1.115 +++ compiler/org/eclipse/jdt/internal/compiler/lookup/MethodVerifier15.java 16 Sep 2010 11:27:11 -0000 @@ -11,6 +11,7 @@ package org.eclipse.jdt.internal.compiler.lookup; import org.eclipse.jdt.internal.compiler.ast.TypeParameter; +import org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants; import org.eclipse.jdt.internal.compiler.util.HashtableOfObject; import org.eclipse.jdt.internal.compiler.util.SimpleSet; @@ -80,7 +81,11 @@ } boolean areReturnTypesCompatible(MethodBinding one, MethodBinding two) { if (one.returnType == two.returnType) return true; - return areReturnTypesCompatible0(one, two); + if (this.type.scope.compilerOptions().sourceLevel >= ClassFileConstants.JDK1_5) { + return areReturnTypesCompatible0(one, two); + } else { + return areTypesEqual(one.returnType.erasure(), two.returnType.erasure()); + } } boolean areTypesEqual(TypeBinding one, TypeBinding two) { if (one == two) return true; Index: compiler/org/eclipse/jdt/internal/compiler/lookup/Scope.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/Scope.java,v retrieving revision 1.373 diff -u -r1.373 Scope.java --- compiler/org/eclipse/jdt/internal/compiler/lookup/Scope.java 19 Aug 2010 08:24:18 -0000 1.373 +++ compiler/org/eclipse/jdt/internal/compiler/lookup/Scope.java 16 Sep 2010 11:27:15 -0000 @@ -704,8 +704,8 @@ } public TypeVariableBinding[] createTypeVariables(TypeParameter[] typeParameters, Binding declaringElement) { - // do not construct type variables if source < 1.5 - if (typeParameters == null || compilerOptions().sourceLevel < ClassFileConstants.JDK1_5) + // If type parameters exist at all, unconditionally internalize them, See https://bugs.eclipse.org/bugs/show_bug.cgi?id=324850 + if (typeParameters == null || typeParameters.length == 0) return Binding.NO_TYPE_VARIABLES; PackageBinding unitPackage = compilationUnitScope().fPackage; Index: compiler/org/eclipse/jdt/internal/compiler/parser/AbstractCommentParser.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/parser/AbstractCommentParser.java,v retrieving revision 1.94 diff -u -r1.94 AbstractCommentParser.java --- compiler/org/eclipse/jdt/internal/compiler/parser/AbstractCommentParser.java 9 Feb 2010 09:12:42 -0000 1.94 +++ compiler/org/eclipse/jdt/internal/compiler/parser/AbstractCommentParser.java 16 Sep 2010 11:27:16 -0000 @@ -822,7 +822,7 @@ boolean hasMultiLines = this.scanner.currentPosition > (this.lineEnd+1); boolean isTypeParam = false; boolean valid = true, empty = true; - boolean mayBeGeneric = this.sourceLevel >= ClassFileConstants.JDK1_5; + boolean mayBeGeneric = true; // See https://bugs.eclipse.org/bugs/show_bug.cgi?id=324850 int token = -1; nextToken: while (true) { this.currentTokenType = -1; Index: compiler/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java,v retrieving revision 1.418 diff -u -r1.418 ProblemReporter.java --- compiler/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java 7 Sep 2010 13:39:18 -0000 1.418 +++ compiler/org/eclipse/jdt/internal/compiler/problem/ProblemReporter.java 16 Sep 2010 11:27:22 -0000 @@ -7082,6 +7082,9 @@ } } public void unsafeReturnTypeOverride(MethodBinding currentMethod, MethodBinding inheritedMethod, SourceTypeBinding type) { + if (this.options.sourceLevel < ClassFileConstants.JDK1_5) { + return; + } int severity = computeSeverity(IProblem.UnsafeReturnTypeOverride); if (severity == ProblemSeverities.Ignore) return; int start = type.sourceStart(); #P org.eclipse.jdt.core.tests.compiler Index: src/org/eclipse/jdt/core/tests/compiler/regression/JavadocTest_1_3.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/JavadocTest_1_3.java,v retrieving revision 1.35 diff -u -r1.35 JavadocTest_1_3.java --- src/org/eclipse/jdt/core/tests/compiler/regression/JavadocTest_1_3.java 28 Apr 2009 17:17:34 -0000 1.35 +++ src/org/eclipse/jdt/core/tests/compiler/regression/JavadocTest_1_3.java 16 Sep 2010 11:27:31 -0000 @@ -1521,7 +1521,7 @@ "5. ERROR in X.java (at line 14)\n" + " * {@link ComparableUtils#compareTo(Object, Object)}.\n" + " ^^^^^^^^^\n" + - "Javadoc: The method compareTo(Object, Object, Class) in the type ComparableUtils is not applicable for the arguments (Object, Object)\n" + + "Javadoc: The method compareTo(Object, Object, Class) in the type ComparableUtils is not applicable for the arguments (Object, Object)\n" + "----------\n"); } @@ -3278,55 +3278,25 @@ "----------\n" + "3. ERROR in test\\X.java (at line 8)\n" + " public G foo(Class stuffClass) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "4. ERROR in test\\X.java (at line 8)\n" + - " public G foo(Class stuffClass) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "5. ERROR in test\\X.java (at line 8)\n" + - " public G foo(Class stuffClass) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "6. ERROR in test\\X.java (at line 15)\n" + - " * @param \n" + - " ^^^\n" + - "Javadoc: Invalid param tag name\n" + - "----------\n" + - "7. ERROR in test\\X.java (at line 19)\n" + + "4. ERROR in test\\X.java (at line 19)\n" + " public G foo(Class stuffClass);\n" + " ^^^^^^^^^^^^^^^^\n" + "Syntax error, type parameters are only available if source level is 1.5\n" + "----------\n" + - "8. ERROR in test\\X.java (at line 19)\n" + + "5. ERROR in test\\X.java (at line 19)\n" + " public G foo(Class stuffClass);\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "9. ERROR in test\\X.java (at line 19)\n" + - " public G foo(Class stuffClass);\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "10. ERROR in test\\X.java (at line 19)\n" + + "6. ERROR in test\\X.java (at line 19)\n" + " public G foo(Class stuffClass);\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "11. ERROR in test\\X.java (at line 19)\n" + - " public G foo(Class stuffClass);\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "12. ERROR in test\\X.java (at line 22)\n" + - " * @param \n" + - " ^^^\n" + - "Javadoc: Invalid param tag name\n" + - "----------\n" + - "13. ERROR in test\\X.java (at line 24)\n" + + "7. ERROR in test\\X.java (at line 24)\n" + " class G {}\n" + " ^\n" + "Syntax error, type parameters are only available if source level is 1.5\n" + @@ -3373,95 +3343,55 @@ "}\n" }, "----------\n" + - "1. ERROR in test\\X.java (at line 6)\n" + - " * @param \n" + - " ^^^\n" + - "Javadoc: Invalid param tag name\n" + - "----------\n" + - "2. ERROR in test\\X.java (at line 9)\n" + + "1. ERROR in test\\X.java (at line 9)\n" + " public X(Class classT) {\n" + " ^\n" + "Syntax error, type parameters are only available if source level is 1.5\n" + "----------\n" + - "3. ERROR in test\\X.java (at line 9)\n" + + "2. ERROR in test\\X.java (at line 9)\n" + " public X(Class classT) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "4. ERROR in test\\X.java (at line 9)\n" + - " public X(Class classT) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "5. ERROR in test\\X.java (at line 12)\n" + - " * @param \n" + - " ^^^\n" + - "Javadoc: Invalid param tag name\n" + - "----------\n" + - "6. ERROR in test\\X.java (at line 16)\n" + + "3. ERROR in test\\X.java (at line 16)\n" + " public Class foo(Class classT) {\n" + " ^\n" + "Syntax error, type parameters are only available if source level is 1.5\n" + "----------\n" + - "7. ERROR in test\\X.java (at line 16)\n" + + "4. ERROR in test\\X.java (at line 16)\n" + " public Class foo(Class classT) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "8. ERROR in test\\X.java (at line 16)\n" + - " public Class foo(Class classT) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "9. ERROR in test\\X.java (at line 16)\n" + + "5. ERROR in test\\X.java (at line 16)\n" + " public Class foo(Class classT) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "10. ERROR in test\\X.java (at line 16)\n" + - " public Class foo(Class classT) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "11. ERROR in test\\X.java (at line 25)\n" + + "6. ERROR in test\\X.java (at line 25)\n" + " public Y(Class classT) {\n" + " ^\n" + "Syntax error, type parameters are only available if source level is 1.5\n" + "----------\n" + - "12. ERROR in test\\X.java (at line 25)\n" + + "7. ERROR in test\\X.java (at line 25)\n" + " public Y(Class classT) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "13. ERROR in test\\X.java (at line 25)\n" + - " public Y(Class classT) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "14. ERROR in test\\X.java (at line 32)\n" + + "8. ERROR in test\\X.java (at line 32)\n" + " public Class foo(Class stuffClass) {\n" + " ^^^^^^^^^^^^^^^^\n" + "Syntax error, type parameters are only available if source level is 1.5\n" + "----------\n" + - "15. ERROR in test\\X.java (at line 32)\n" + + "9. ERROR in test\\X.java (at line 32)\n" + " public Class foo(Class stuffClass) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "16. ERROR in test\\X.java (at line 32)\n" + - " public Class foo(Class stuffClass) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "17. ERROR in test\\X.java (at line 32)\n" + + "10. ERROR in test\\X.java (at line 32)\n" + " public Class foo(Class stuffClass) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + - "----------\n" + - "18. ERROR in test\\X.java (at line 32)\n" + - " public Class foo(Class stuffClass) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + "----------\n"); } Index: src/org/eclipse/jdt/core/tests/compiler/regression/JavadocTest_1_4.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/JavadocTest_1_4.java,v retrieving revision 1.38 diff -u -r1.38 JavadocTest_1_4.java --- src/org/eclipse/jdt/core/tests/compiler/regression/JavadocTest_1_4.java 28 Apr 2009 17:17:32 -0000 1.38 +++ src/org/eclipse/jdt/core/tests/compiler/regression/JavadocTest_1_4.java 16 Sep 2010 11:27:35 -0000 @@ -1521,7 +1521,7 @@ "5. ERROR in X.java (at line 14)\n" + " * {@link ComparableUtils#compareTo(Object, Object)}.\n" + " ^^^^^^^^^\n" + - "Javadoc: The method compareTo(Object, Object, Class) in the type ComparableUtils is not applicable for the arguments (Object, Object)\n" + + "Javadoc: The method compareTo(Object, Object, Class) in the type ComparableUtils is not applicable for the arguments (Object, Object)\n" + "----------\n"); } @@ -2722,55 +2722,25 @@ "----------\n" + "3. ERROR in test\\X.java (at line 8)\n" + " public G foo(Class stuffClass) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "4. ERROR in test\\X.java (at line 8)\n" + - " public G foo(Class stuffClass) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "5. ERROR in test\\X.java (at line 8)\n" + - " public G foo(Class stuffClass) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "6. ERROR in test\\X.java (at line 15)\n" + - " * @param \n" + - " ^^^\n" + - "Javadoc: Invalid param tag name\n" + - "----------\n" + - "7. ERROR in test\\X.java (at line 19)\n" + + "4. ERROR in test\\X.java (at line 19)\n" + " public G foo(Class stuffClass);\n" + " ^^^^^^^^^^^^^^^^\n" + "Syntax error, type parameters are only available if source level is 1.5\n" + "----------\n" + - "8. ERROR in test\\X.java (at line 19)\n" + + "5. ERROR in test\\X.java (at line 19)\n" + " public G foo(Class stuffClass);\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "9. ERROR in test\\X.java (at line 19)\n" + - " public G foo(Class stuffClass);\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "10. ERROR in test\\X.java (at line 19)\n" + + "6. ERROR in test\\X.java (at line 19)\n" + " public G foo(Class stuffClass);\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "11. ERROR in test\\X.java (at line 19)\n" + - " public G foo(Class stuffClass);\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "12. ERROR in test\\X.java (at line 22)\n" + - " * @param \n" + - " ^^^\n" + - "Javadoc: Invalid param tag name\n" + - "----------\n" + - "13. ERROR in test\\X.java (at line 24)\n" + + "7. ERROR in test\\X.java (at line 24)\n" + " class G {}\n" + " ^\n" + "Syntax error, type parameters are only available if source level is 1.5\n" + @@ -2818,95 +2788,55 @@ "}\n" }, "----------\n" + - "1. ERROR in test\\X.java (at line 6)\n" + - " * @param \n" + - " ^^^\n" + - "Javadoc: Invalid param tag name\n" + - "----------\n" + - "2. ERROR in test\\X.java (at line 9)\n" + + "1. ERROR in test\\X.java (at line 9)\n" + " public X(Class classT) {\n" + " ^\n" + "Syntax error, type parameters are only available if source level is 1.5\n" + "----------\n" + - "3. ERROR in test\\X.java (at line 9)\n" + + "2. ERROR in test\\X.java (at line 9)\n" + " public X(Class classT) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "4. ERROR in test\\X.java (at line 9)\n" + - " public X(Class classT) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "5. ERROR in test\\X.java (at line 12)\n" + - " * @param \n" + - " ^^^\n" + - "Javadoc: Invalid param tag name\n" + - "----------\n" + - "6. ERROR in test\\X.java (at line 16)\n" + + "3. ERROR in test\\X.java (at line 16)\n" + " public Class foo(Class classT) {\n" + " ^\n" + "Syntax error, type parameters are only available if source level is 1.5\n" + "----------\n" + - "7. ERROR in test\\X.java (at line 16)\n" + + "4. ERROR in test\\X.java (at line 16)\n" + " public Class foo(Class classT) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "8. ERROR in test\\X.java (at line 16)\n" + - " public Class foo(Class classT) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "9. ERROR in test\\X.java (at line 16)\n" + + "5. ERROR in test\\X.java (at line 16)\n" + " public Class foo(Class classT) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "10. ERROR in test\\X.java (at line 16)\n" + - " public Class foo(Class classT) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "11. ERROR in test\\X.java (at line 25)\n" + + "6. ERROR in test\\X.java (at line 25)\n" + " public Y(Class classT) {\n" + " ^\n" + "Syntax error, type parameters are only available if source level is 1.5\n" + "----------\n" + - "12. ERROR in test\\X.java (at line 25)\n" + + "7. ERROR in test\\X.java (at line 25)\n" + " public Y(Class classT) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "13. ERROR in test\\X.java (at line 25)\n" + - " public Y(Class classT) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "14. ERROR in test\\X.java (at line 32)\n" + + "8. ERROR in test\\X.java (at line 32)\n" + " public Class foo(Class stuffClass) {\n" + " ^^^^^^^^^^^^^^^^\n" + "Syntax error, type parameters are only available if source level is 1.5\n" + "----------\n" + - "15. ERROR in test\\X.java (at line 32)\n" + + "9. ERROR in test\\X.java (at line 32)\n" + " public Class foo(Class stuffClass) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "16. ERROR in test\\X.java (at line 32)\n" + - " public Class foo(Class stuffClass) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + - "----------\n" + - "17. ERROR in test\\X.java (at line 32)\n" + + "10. ERROR in test\\X.java (at line 32)\n" + " public Class foo(Class stuffClass) {\n" + " ^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + - "----------\n" + - "18. ERROR in test\\X.java (at line 32)\n" + - " public Class foo(Class stuffClass) {\n" + - " ^\n" + - "T cannot be resolved to a type\n" + "----------\n" ); } Index: src/org/eclipse/jdt/core/tests/compiler/regression/MethodVerifyTest.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/MethodVerifyTest.java,v retrieving revision 1.202 diff -u -r1.202 MethodVerifyTest.java --- src/org/eclipse/jdt/core/tests/compiler/regression/MethodVerifyTest.java 9 Sep 2010 15:42:19 -0000 1.202 +++ src/org/eclipse/jdt/core/tests/compiler/regression/MethodVerifyTest.java 16 Sep 2010 11:27:48 -0000 @@ -11011,7 +11011,7 @@ "----------\n"); } //https://bugs.eclipse.org/bugs/show_bug.cgi?id=324850 -public void _test213() { +public void test213() { Map compilerOptions15 = getCompilerOptions(); compilerOptions15.put(JavaCore.COMPILER_CODEGEN_TARGET_PLATFORM, JavaCore.VERSION_1_5); compilerOptions15.put(JavaCore.COMPILER_COMPLIANCE, JavaCore.VERSION_1_5); Index: src/org/eclipse/jdt/core/tests/compiler/regression/ProblemTypeAndMethodTest.java =================================================================== RCS file: /cvsroot/eclipse/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/ProblemTypeAndMethodTest.java,v retrieving revision 1.31 diff -u -r1.31 ProblemTypeAndMethodTest.java --- src/org/eclipse/jdt/core/tests/compiler/regression/ProblemTypeAndMethodTest.java 7 Sep 2010 13:39:17 -0000 1.31 +++ src/org/eclipse/jdt/core/tests/compiler/regression/ProblemTypeAndMethodTest.java 16 Sep 2010 11:28:07 -0000 @@ -3379,52 +3379,57 @@ " ^^^^\n" + "The method bar1() from the type X refers to the missing type Zork\n" + "----------\n" + - "2. ERROR in X.java (at line 6)\n" + + "2. ERROR in X.java (at line 5)\n" + + " bar2();\n" + + " ^^^^\n" + + "The method bar2() from the type X refers to the missing type Zork\n" + + "----------\n" + + "3. ERROR in X.java (at line 6)\n" + " bar3(null);\n" + " ^^^^\n" + "The method bar3(Zork) from the type X refers to the missing type Zork\n" + "----------\n" + - "3. ERROR in X.java (at line 7)\n" + + "4. ERROR in X.java (at line 7)\n" + " bar4(null,null);\n" + " ^^^^\n" + "The method bar4(Zork) from the type X refers to the missing type Zork\n" + "----------\n" + - "4. ERROR in X.java (at line 9)\n" + + "5. ERROR in X.java (at line 9)\n" + " Zork bar1() {}\n" + " ^^^^\n" + "Zork cannot be resolved to a type\n" + "----------\n" + - "5. ERROR in X.java (at line 9)\n" + + "6. ERROR in X.java (at line 9)\n" + " Zork bar1() {}\n" + " ^^^^^^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "6. ERROR in X.java (at line 10)\n" + + "7. ERROR in X.java (at line 10)\n" + " List bar2() {}\n" + " ^^^^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "7. ERROR in X.java (at line 10)\n" + + "8. ERROR in X.java (at line 10)\n" + " List bar2() {}\n" + " ^^^^\n" + "Zork cannot be resolved to a type\n" + "----------\n" + - "8. ERROR in X.java (at line 11)\n" + + "9. ERROR in X.java (at line 11)\n" + " void bar3(Zork z) {}\n" + " ^^^^\n" + "Zork cannot be resolved to a type\n" + "----------\n" + - "9. ERROR in X.java (at line 11)\n" + + "10. ERROR in X.java (at line 11)\n" + " void bar3(Zork z) {}\n" + " ^^^^^^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" + "----------\n" + - "10. ERROR in X.java (at line 12)\n" + + "11. ERROR in X.java (at line 12)\n" + " void bar4(Zork z) {}\n" + " ^^^^\n" + "Zork cannot be resolved to a type\n" + "----------\n" + - "11. ERROR in X.java (at line 12)\n" + + "12. ERROR in X.java (at line 12)\n" + " void bar4(Zork z) {}\n" + " ^^^^^^^^^^^^^\n" + "Syntax error, parameterized types are only available if source level is 1.5\n" +