You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@groovy.apache.org by em...@apache.org on 2021/12/14 21:53:12 UTC
[groovy] branch master updated: GROOVY-7242: refactor static checks
This is an automated email from the ASF dual-hosted git repository.
emilles pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git
The following commit(s) were added to refs/heads/master by this push:
new 17029c6 GROOVY-7242: refactor static checks
17029c6 is described below
commit 17029c63e36b099aadb8d36bcc9834834e76f209
Author: Eric Milles <er...@thomsonreuters.com>
AuthorDate: Tue Dec 14 15:53:03 2021 -0600
GROOVY-7242: refactor static checks
---
.../org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java | 1 -
.../org/codehaus/groovy/transform/trait/TraitASTTransformation.java | 3 +++
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java b/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java
index 3f0af1e..86bf51c 100644
--- a/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java
+++ b/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java
@@ -4775,7 +4775,6 @@ public class StaticTypeCheckingVisitor extends ClassCodeVisitorSupport {
}
}
if (!receiver.isStaticClass() && receiver.getOuterClass() != null
- && !receiver.getName().endsWith("$Trait$Helper") // GROOVY-7242
&& typeCheckingContext.getEnclosingClassNodes().contains(receiver)) {
ClassNode outer = receiver.getOuterClass();
do { methods.addAll(findMethodsWithGenerated(outer, name));
diff --git a/src/main/java/org/codehaus/groovy/transform/trait/TraitASTTransformation.java b/src/main/java/org/codehaus/groovy/transform/trait/TraitASTTransformation.java
index 9d78e4b..b54ffed 100644
--- a/src/main/java/org/codehaus/groovy/transform/trait/TraitASTTransformation.java
+++ b/src/main/java/org/codehaus/groovy/transform/trait/TraitASTTransformation.java
@@ -167,6 +167,7 @@ public class TraitASTTransformation extends AbstractASTTransformation implements
ClassNode.EMPTY_ARRAY,
null
);
+ helper.setStaticClass(true); // GROOVY-7242, GROOVY-7456, etc.
cNode.setModifiers(ACC_PUBLIC | ACC_ABSTRACT | ACC_INTERFACE);
checkInnerClasses(cNode);
@@ -199,6 +200,7 @@ public class TraitASTTransformation extends AbstractASTTransformation implements
ACC_PUBLIC | ACC_STATIC | ACC_ABSTRACT | ACC_INTERFACE | ACC_SYNTHETIC,
OBJECT_TYPE
);
+ fieldHelper.setStaticClass(true);
if (hasStatic) {
staticFieldHelper = new InnerClassNode(
cNode,
@@ -206,6 +208,7 @@ public class TraitASTTransformation extends AbstractASTTransformation implements
ACC_PUBLIC | ACC_STATIC | ACC_ABSTRACT | ACC_INTERFACE | ACC_SYNTHETIC,
OBJECT_TYPE
);
+ staticFieldHelper.setStaticClass(true);
}
}