From 3eb681c26bc02bf837ff0160e3b8613e72004e97 Mon Sep 17 00:00:00 2001 From: peter Date: Fri, 25 May 2012 20:38:01 +0200 Subject: [PATCH] IDEA-86672 Groovy compiler failed to make unable to resolve class SuccessfulCherryPickExecutor --- .../groovy/compiler/rt/GroovycRunner.java | 4 ---- .../groovy/compiler/GroovyCompilerTest.groovy | 16 ++++++++++++++++ 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/plugins/groovy/rt/src/org/jetbrains/groovy/compiler/rt/GroovycRunner.java b/plugins/groovy/rt/src/org/jetbrains/groovy/compiler/rt/GroovycRunner.java index 0b9622b62846..4101793b0732 100644 --- a/plugins/groovy/rt/src/org/jetbrains/groovy/compiler/rt/GroovycRunner.java +++ b/plugins/groovy/rt/src/org/jetbrains/groovy/compiler/rt/GroovycRunner.java @@ -544,10 +544,6 @@ public class GroovycRunner { ensureWellFormed(field.getGenericType(), visited); } - for (Class inner : aClass.getDeclaredClasses()) { - ensureWellFormed(inner, visited); - } - Type superclass = aClass.getGenericSuperclass(); if (superclass != null) { ensureWellFormed(aClass, visited); diff --git a/plugins/groovy/test/org/jetbrains/plugins/groovy/compiler/GroovyCompilerTest.groovy b/plugins/groovy/test/org/jetbrains/plugins/groovy/compiler/GroovyCompilerTest.groovy index 53a5afbd570e..39f465500143 100644 --- a/plugins/groovy/test/org/jetbrains/plugins/groovy/compiler/GroovyCompilerTest.groovy +++ b/plugins/groovy/test/org/jetbrains/plugins/groovy/compiler/GroovyCompilerTest.groovy @@ -665,6 +665,22 @@ public class Main { assert findClassFile("Client") } + public void "test ignore groovy internal non-existent interface helper inner class"() { + myFixture.addFileToProject 'Foo.groovy', ''' +interface Foo {} + +class Zoo { + Foo foo() {} + static class Inner implements Foo {} +} + +''' + def bar = myFixture.addFileToProject 'Bar.groovy', 'class Bar { def foo = new Zoo.Inner() {} }' + + assertEmpty make() + assertEmpty compileFiles(bar.virtualFile) + } + public void "test multiline strings"() { myFixture.addFileToProject 'Foo.groovy', '''class Foo { public static final String s = """