Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 112322 Details for
Bug 233187
[javadoc] partially qualified inner types should be warned
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
[patch]
Updated patch on top of v_912
v01.txt (text/plain), 7.54 KB, created by
Frederic Fusier
on 2008-09-11 12:34:53 EDT
(
hide
)
Description:
Updated patch on top of v_912
Filename:
MIME Type:
Creator:
Frederic Fusier
Created:
2008-09-11 12:34:53 EDT
Size:
7.54 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.jdt.core >Index: compiler/org/eclipse/jdt/internal/compiler/ast/JavadocArgumentExpression.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/JavadocArgumentExpression.java,v >retrieving revision 1.25 >diff -u -r1.25 JavadocArgumentExpression.java >--- compiler/org/eclipse/jdt/internal/compiler/ast/JavadocArgumentExpression.java 27 Jun 2008 16:03:54 -0000 1.25 >+++ compiler/org/eclipse/jdt/internal/compiler/ast/JavadocArgumentExpression.java 11 Sep 2008 16:20:10 -0000 >@@ -49,6 +49,18 @@ > scope.problemReporter().javadocInvalidMemberTypeQualification(this.sourceStart, this.sourceEnd, scope.getDeclarationModifiers()); > // https://bugs.eclipse.org/bugs/show_bug.cgi?id=228648 > // do not return now but report unresolved reference as expected depending on compliance settings >+ } else if (typeRef instanceof QualifiedTypeReference) { >+ TypeBinding enclosingType = this.resolvedType.leafComponentType().enclosingType(); >+ if (enclosingType != null) { >+ // https://bugs.eclipse.org/bugs/show_bug.cgi?id=233187 >+ // inner type references should be fully qualified >+ int compoundLength = 2; >+ while ((enclosingType = enclosingType.enclosingType()) != null) compoundLength++; >+ compoundLength+=this.resolvedType.getPackage().compoundName.length; >+ if (typeRef.getTypeName().length != compoundLength) { >+ scope.problemReporter().javadocInvalidMemberTypeQualification(typeRef.sourceStart, typeRef.sourceEnd, scope.getDeclarationModifiers()); >+ } >+ } > } > if (!this.resolvedType.isValidBinding()) { > scope.problemReporter().javadocInvalidType(typeRef, this.resolvedType, scope.getDeclarationModifiers()); >#P org.eclipse.jdt.core.tests.compiler >Index: src/org/eclipse/jdt/core/tests/compiler/regression/JavadocBugsTest.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/JavadocBugsTest.java,v >retrieving revision 1.52 >diff -u -r1.52 JavadocBugsTest.java >--- src/org/eclipse/jdt/core/tests/compiler/regression/JavadocBugsTest.java 11 Sep 2008 15:39:23 -0000 1.52 >+++ src/org/eclipse/jdt/core/tests/compiler/regression/JavadocBugsTest.java 11 Sep 2008 16:20:12 -0000 >@@ -7745,6 +7745,122 @@ > } > > /** >+ * @bug 233187: [javadoc] partially qualified inner types should be warned >+ * @test verify that partial inner class qualification are warned as javadoc tools does >+ * @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=233187" >+ */ >+public void testBug233187a() { >+ String[] units = new String[] { >+ "X.java", >+ "package test.bug;\n" + >+ "\n" + >+ "public class X {\n" + >+ " public static class Y {\n" + >+ " public static class Z { \n" + >+ " /**\n" + >+ " * The position in the new method signature depends on\n" + >+ " * the position in the array passed to\n" + >+ " * {@link X.Y#foo(test.bug.X.Y.Z[])} OK for javadoc tool\n" + >+ " * {@link X.Y#foo(test.bug.X.Y.Z)} KO for javadoc tool\n" + >+ " * {@link X.Y#foo(no_test.bug.X.Y.Z[])} KO for javadoc tool\n" + >+ " * {@link X.Y#foo(Y.Z[])} KO for javadoc tool\n" + >+ " * {@link test.bug.X.Y#foo(Y.Z[])} KO for javadoc tool\n" + >+ " */\n" + >+ " public int bar() {\n" + >+ " return 0;\n" + >+ " }\n" + >+ " }\n" + >+ "\n" + >+ " public void foo(Z[] params) {\n" + >+ " }\n" + >+ " }\n" + >+ "}\n" >+ }; >+ runNegativeTest(units, >+ // warning - Tag @link: can't find foo(test.bug.X.Y.Z) in test.bug.X.Y >+ // warning - Tag @link: can't find foo(no_test.bug.X.Y.Z[]) in test.bug.X.Y >+ // warning - Tag @link: can't find foo(Y.Z[]) in test.bug.X.Y >+ // warning - Tag @link: can't find foo(Y.Z[]) in test.bug.X.Y >+ "----------\n" + >+ "1. ERROR in X.java (at line 10)\n" + >+ " * {@link X.Y#foo(test.bug.X.Y.Z)} KO for javadoc tool\n" + >+ " ^^^\n" + >+ "Javadoc: The method foo(X.Y.Z[]) in the type X.Y is not applicable for the arguments (X.Y.Z)\n" + >+ "----------\n" + >+ "2. ERROR in X.java (at line 11)\n" + >+ " * {@link X.Y#foo(no_test.bug.X.Y.Z[])} KO for javadoc tool\n" + >+ " ^^^^^^^^^^^^^^^^^\n" + >+ "Javadoc: no_test[] cannot be resolved to a type\n" + >+ "----------\n" + >+ "3. ERROR in X.java (at line 12)\n" + >+ " * {@link X.Y#foo(Y.Z[])} KO for javadoc tool\n" + >+ " ^^^\n" + >+ "Javadoc: Invalid member type qualification\n" + >+ "----------\n" + >+ "4. ERROR in X.java (at line 13)\n" + >+ " * {@link test.bug.X.Y#foo(Y.Z[])} KO for javadoc tool\n" + >+ " ^^^\n" + >+ "Javadoc: Invalid member type qualification\n" + >+ "----------\n" >+ ); >+} >+public void testBug233187b() { >+ String[] units = new String[] { >+ "X.java", >+ "package test.bug;\n" + >+ "\n" + >+ "public class X {\n" + >+ " public static class Y {\n" + >+ " public static class Z { \n" + >+ " /**\n" + >+ " * The position in the new method signature depends on\n" + >+ " * the position in the array passed to\n" + >+ " * {@link X.Y#foo(test.bug.X.Y.Z)} OK for javadoc tool\n" + >+ " * {@link X.Y#foo(test.bug.X.Y.Z[])} KO for javadoc tool\n" + >+ " * {@link X.Y#foo(no_test.bug.X.Y.Z)} KO for javadoc tool\n" + >+ " * {@link X.Y#foo(Y.Z)} KO for javadoc tool\n" + >+ " * {@link test.bug.X.Y#foo(Y.Z)} KO for javadoc tool\n" + >+ " */\n" + >+ " public int bar() {\n" + >+ " return 0;\n" + >+ " }\n" + >+ " }\n" + >+ "\n" + >+ " public void foo(Z params) {\n" + >+ " }\n" + >+ " }\n" + >+ "}\n" >+ }; >+ runNegativeTest(units, >+ // warning - Tag @link: can't find foo(test.bug.X.Y.Z[]) in test.bug.X.Y >+ // warning - Tag @link: can't find foo(no_test.bug.X.Y.Z) in test.bug.X.Y >+ // warning - Tag @link: can't find foo(Y.Z) in test.bug.X.Y >+ // warning - Tag @link: can't find foo(Y.Z) in test.bug.X.Y >+ "----------\n" + >+ "1. ERROR in X.java (at line 10)\n" + >+ " * {@link X.Y#foo(test.bug.X.Y.Z[])} KO for javadoc tool\n" + >+ " ^^^\n" + >+ "Javadoc: The method foo(X.Y.Z) in the type X.Y is not applicable for the arguments (X.Y.Z[])\n" + >+ "----------\n" + >+ "2. ERROR in X.java (at line 11)\n" + >+ " * {@link X.Y#foo(no_test.bug.X.Y.Z)} KO for javadoc tool\n" + >+ " ^^^^^^^^^^^^^^^^^\n" + >+ "Javadoc: no_test cannot be resolved to a type\n" + >+ "----------\n" + >+ "3. ERROR in X.java (at line 12)\n" + >+ " * {@link X.Y#foo(Y.Z)} KO for javadoc tool\n" + >+ " ^^^\n" + >+ "Javadoc: Invalid member type qualification\n" + >+ "----------\n" + >+ "4. ERROR in X.java (at line 13)\n" + >+ " * {@link test.bug.X.Y#foo(Y.Z)} KO for javadoc tool\n" + >+ " ^^^\n" + >+ "Javadoc: Invalid member type qualification\n" + >+ "----------\n" >+ ); >+} >+ >+/** > * @bug 233887: Build of Eclipse project stop by NullPointerException and will not continue on Eclipse version later than 3.4M7 > * @test Ensure that no NPE is raised when a 1.5 param tag syntax is incorrectly used on a fiel with an initializer > * @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=233887"
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 233187
:
101465
| 112322