diff options
author | Till Brychcy | 2017-04-22 20:23:22 +0000 |
---|---|---|
committer | Till Brychcy | 2017-04-22 20:57:04 +0000 |
commit | c84b39352d62fb14489e035ddc1d4d8a4531d844 (patch) | |
tree | 13bcf561f8ebb85bcb0b94441f8c1c75a0900405 | |
parent | ff9698f664fadd62325b86c1541d7575aabf84c8 (diff) | |
download | eclipse.jdt.core-c84b39352d62fb14489e035ddc1d4d8a4531d844.tar.gz eclipse.jdt.core-c84b39352d62fb14489e035ddc1d4d8a4531d844.tar.xz eclipse.jdt.core-c84b39352d62fb14489e035ddc1d4d8a4531d844.zip |
Bug 515614 - Bogus error: cannot convert fromI20170425-0910I20170425-0700I20170425-0240I20170425-0215I20170424-2000I20170423-2000
X<Generic.NestedInterface[]> to X<Generic.NestedInterface[]>
Change-Id: Ic72cbe379bd618574b235a44bc7c6d3a09bcb280
2 files changed, 25 insertions, 1 deletions
diff --git a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/GenericsRegressionTest.java b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/GenericsRegressionTest.java index beee136786..8b529c0564 100644 --- a/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/GenericsRegressionTest.java +++ b/org.eclipse.jdt.core.tests.compiler/src/org/eclipse/jdt/core/tests/compiler/regression/GenericsRegressionTest.java @@ -6061,5 +6061,29 @@ public void testBug508799() { }, null, customOptions, "", "", "", null ); } +public void testBug515614() { + runConformTest( + new String[] { + "test/Test.java", + "package test;\n" + + "\n" + + "abstract class Generic<E> {\n" + + " interface NestedInterface {\n" + + " }\n" + + "}\n" + + "\n" + + "abstract class X<V> {\n" + + " public static <W> X<W> create(Class<W> vclass) {\n" + + " return vclass == null ? null : null;\n" + + " }\n" + + "}\n" + + "\n" + + "public class Test {\n" + + " X<Generic.NestedInterface[]> x = X.create(Generic.NestedInterface[].class);\n" + + "}\n" + + "", + } + ); +} } diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java index 7bc411b4af..111d785526 100644 --- a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java +++ b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/LookupEnvironment.java @@ -537,7 +537,7 @@ public TypeBinding convertToRawType(TypeBinding type, boolean forceRawEnclosingT needToConvert = false; break; } - forceRawEnclosingType &= !type.isStatic(); + forceRawEnclosingType &= !originalType.isStatic(); ReferenceBinding originalEnclosing = originalType.enclosingType(); TypeBinding convertedType; if (originalEnclosing == null) { |