diff options
author | Philipe Mulet | 2005-06-17 09:27:02 +0000 |
---|---|---|
committer | Philipe Mulet | 2005-06-17 09:27:02 +0000 |
commit | b63e8e4c0e47a3750b0c4a9f091dec5ceec8f467 (patch) | |
tree | e1389beb30d332c83d2dd1a08561f210aee000e5 | |
parent | 9ea930b8ef0b567a4e08013a97afc6ba878aa860 (diff) | |
download | eclipse.jdt.core-b63e8e4c0e47a3750b0c4a9f091dec5ceec8f467.tar.gz eclipse.jdt.core-b63e8e4c0e47a3750b0c4a9f091dec5ceec8f467.tar.xz eclipse.jdt.core-b63e8e4c0e47a3750b0c4a9f091dec5ceec8f467.zip |
100519v_567
4 files changed, 39 insertions, 9 deletions
diff --git a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/GenericTypeTest.java b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/GenericTypeTest.java index 0c2ae40237..d74d9811ff 100644 --- a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/GenericTypeTest.java +++ b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/GenericTypeTest.java @@ -21995,5 +21995,20 @@ public void test762() { }, ""); } +//https://bugs.eclipse.org/bugs/show_bug.cgi?id=100519 +public void test763() { + this.runConformTest( + new String[] { + "X.java", + "public class X<E> {\n" + + " public static class InnerClass {\n" + + " public InnerClass() {\n" + + " System.out.println(\"class : \" + InnerClass.this);\n" + + " }\n" + + " }\n" + + "}\n", + }, + ""); +} } diff --git a/org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/messages.properties b/org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/messages.properties index 82476b59cb..5687cbc76d 100644 --- a/org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/messages.properties +++ b/org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/messages.properties @@ -14,7 +14,7 @@ #Format: compiler.name = word1 word2 word3 compiler.name = Eclipse Java Compiler #Format: compiler.version = 0.XXX[, other words (don't forget the comma if adding other words)] -compiler.version = 0.566, pre-3.1.0 release candidate-3 +compiler.version = 0.567, pre-3.1.0 release candidate-3 compiler.copyright = Copyright IBM Corp 2000, 2005. All rights reserved. ### scanning diff --git a/org.eclipse.jdt.core/buildnotes_jdt-core.html b/org.eclipse.jdt.core/buildnotes_jdt-core.html index f65b410f68..d768ca5088 100644 --- a/org.eclipse.jdt.core/buildnotes_jdt-core.html +++ b/org.eclipse.jdt.core/buildnotes_jdt-core.html @@ -37,11 +37,28 @@ </tr> </table> +<a name="v_567"></a> +<p><hr><h1> +Eclipse Platform Build Notes <br> +Java Development Tooling Core</h1> +Eclipse SDK 3.1RC3 - 17th June 2005 - 3.1 RELEASE CANDIDATE 3 +<br>Project org.eclipse.jdt.core v_567 +(<a href="http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.jdt.core/?only_with_tag=v_567">cvs</a>). +<h2> +What's new in this drop</h2> +<ul> +</ul> + +<h3>Problem Reports Fixed</h3> +<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=100519">100519</a> +[1.5][compiler] generic parameter and qualified access seems to confuse each other + + <a name="v_566"></a> <p><hr><h1> Eclipse Platform Build Notes <br> Java Development Tooling Core</h1> -Eclipse SDK 3.1RC3 - 16th June 2005 - 3.1 RELEASE CANDIDATE 3 +Eclipse SDK 3.1RC3 - 16th June 2005 <br>Project org.eclipse.jdt.core v_566 (<a href="http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.jdt.core/?only_with_tag=v_566">cvs</a>). <h2> diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/QualifiedThisReference.java b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/QualifiedThisReference.java index 58c59a79bb..1c647f1435 100644 --- a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/QualifiedThisReference.java +++ b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/ast/QualifiedThisReference.java @@ -72,15 +72,13 @@ public class QualifiedThisReference extends ThisReference { public TypeBinding resolveType(BlockScope scope) { constant = NotAConstant; - TypeBinding type = this.resolvedType = this.qualification.resolveType(scope, true /* check bounds*/); + TypeBinding type = this.qualification.resolveType(scope, true /* check bounds*/); if (type == null) return null; - // X.this is not a raw type as denoting enclosing instance - if (type.isRawType()) { - RawTypeBinding rawType = (RawTypeBinding) type; - type = this.resolvedType = rawType.type; // unwrap - } + // X.this is not a param/raw type as denoting enclosing instance + this.resolvedType = type = type.erasure(); + // the qualification MUST exactly match some enclosing type name - // Its possible to qualify 'this' by the name of the current class + // It is possible to qualify 'this' by the name of the current class int depth = 0; this.currentCompatibleType = scope.referenceType().binding; while (this.currentCompatibleType != null |