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 0e8718d6ba GROOVY-5585: interface implicit super class
0e8718d6ba is described below
commit 0e8718d6bafba61daf962892c9d7ae10832b62e0
Author: Eric Milles <[email protected]>
AuthorDate: Thu May 23 16:36:02 2024 -0500
GROOVY-5585: interface implicit super class
---
.../codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
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 b9c5f70b6b..efde5781cc 100644
---
a/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java
+++
b/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingVisitor.java
@@ -1629,6 +1629,8 @@ out: if ((samParameterTypes.length == 1 &&
isOrImplements(samParameterTypes[0
queue.add(receiverType);
if (isPrimitiveType(receiverType)) {
queue.add(getWrapper(receiverType));
+ } else if (receiverType.isInterface()) {
+ queue.add(OBJECT_TYPE);//GROOVY-5585
}
while (!queue.isEmpty()) {
ClassNode current = queue.remove();
@@ -3956,9 +3958,7 @@ out: if (mn.size() != 1) {
addBoundType(receiver, owners);
addSelfTypes(receiver, owners);
addTraitType(receiver, owners);
- if (receiver.redirect().isInterface()) {
- owners.add(Receiver.make(OBJECT_TYPE));
- } else if (isSuperExpression(objectExpression)) {
//GROOVY-9909: super.defaultMethod()
+ if (isSuperExpression(objectExpression)) { // GROOVY-9909:
super.defaultMethod()
for (ClassNode in :
typeCheckingContext.getEnclosingClassNode().getInterfaces()) {
if (!receiver.implementsInterface(in))
owners.add(Receiver.make(in));
}