This is an automated email from the ASF dual-hosted git repository. paulk pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/groovy.git
commit 0af5fcf2fedc7f7810d9889971e4bf394367ef92 Author: Paul King <[email protected]> AuthorDate: Sat Jul 18 20:22:30 2020 +1000 GROOVY-8715: minor refactor (closes #1317) --- .../org/codehaus/groovy/control/ResolveVisitor.java | 18 ++++++++++-------- src/test/gls/innerClass/InnerClassTest.groovy | 6 +++--- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/src/main/java/org/codehaus/groovy/control/ResolveVisitor.java b/src/main/java/org/codehaus/groovy/control/ResolveVisitor.java index d348a77..dbaba62 100644 --- a/src/main/java/org/codehaus/groovy/control/ResolveVisitor.java +++ b/src/main/java/org/codehaus/groovy/control/ResolveVisitor.java @@ -322,17 +322,19 @@ public class ResolveVisitor extends ClassCodeExpressionTransformer { genericParameterNames = oldPNames; } - private void resolveOrFailPlus(final ClassNode type, final ASTNode node) { - resolveGenericsTypes(type.getGenericsTypes()); - if (resolveAliasFromModule(type)) return; - resolveOrFail(type, node); - } - private void resolveOrFail(final ClassNode type, final ASTNode node) { resolveOrFail(type, "", node); } private void resolveOrFail(final ClassNode type, final String msg, final ASTNode node) { + resolveOrFail(type, "", node, false); + } + + private void resolveOrFail(final ClassNode type, final String msg, final ASTNode node, final boolean preferImports) { + if (preferImports) { + resolveGenericsTypes(type.getGenericsTypes()); + if (resolveAliasFromModule(type)) return; + } if (resolve(type)) return; if (resolveToInner(type)) return; if (resolveToOuterNested(type)) return; @@ -1476,10 +1478,10 @@ public class ResolveVisitor extends ClassCodeExpressionTransformer { } ClassNode sn = node.getUnresolvedSuperClass(); - if (sn != null) resolveOrFailPlus(sn, node); + if (sn != null) resolveOrFail(sn, "", node, true); for (ClassNode anInterface : node.getInterfaces()) { - resolveOrFailPlus(anInterface, node); + resolveOrFail(anInterface, "", node, true); } checkCyclicInheritance(node, node.getUnresolvedSuperClass(), node.getInterfaces()); diff --git a/src/test/gls/innerClass/InnerClassTest.groovy b/src/test/gls/innerClass/InnerClassTest.groovy index 65377eb..6f401fe 100644 --- a/src/test/gls/innerClass/InnerClassTest.groovy +++ b/src/test/gls/innerClass/InnerClassTest.groovy @@ -1237,7 +1237,7 @@ final class InnerClassTest { } @Test - void testResolveInnerOfSuperType9() { + void testResolveInnerOfSuperType10() { assertScript ''' abstract class A { static class B {} @@ -1252,7 +1252,7 @@ final class InnerClassTest { } @Test - void testResolveInnerOfSuperType9a() { + void testResolveInnerOfSuperType10a() { assertScript ''' abstract class A { static class B {} @@ -1267,7 +1267,7 @@ final class InnerClassTest { } @CompileDynamic @Test // GROOVY-8715 - void testResolveInnerOfSuperType9b() { + void testResolveInnerOfSuperType10b() { def config = new CompilerConfiguration( targetDirectory: File.createTempDir(), jointCompilationOptions: [memStub: true]
