This is an automated email from the ASF dual-hosted git repository.
paulk pushed a commit to branch groovy11888
in repository https://gitbox.apache.org/repos/asf/groovy.git
The following commit(s) were added to refs/heads/groovy11888 by this push:
new d37bc6b725 GROOVY-11888: STC: method resolution fails for
UnionTypeClassNode due to premature covariant elimination
d37bc6b725 is described below
commit d37bc6b7258a658bf149897ff47a1d2817aa5805
Author: Paul King <[email protected]>
AuthorDate: Mon Mar 30 11:09:48 2026 +1000
GROOVY-11888: STC: method resolution fails for UnionTypeClassNode due to
premature covariant elimination
---
.../org/codehaus/groovy/transform/stc/StaticTypeCheckingSupport.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git
a/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingSupport.java
b/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingSupport.java
index c7676a2ba4..a4783f52fb 100644
---
a/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingSupport.java
+++
b/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingSupport.java
@@ -965,7 +965,7 @@ public abstract class StaticTypeCheckingSupport {
var view = methods;
if (duckType) {
view = methods.stream().filter(m ->
implementsInterfaceOrSubclassOf(rcvr, m.getDeclaringClass())).toList();
- if (view.size() > 1 && !first(view).isConstructor())
+ if (view.size() > 1)
view = removeCovariantsAndInterfaceEquivalents(view, true);
}
view = chooseBestMethods(rcvr, view, argumentTypes);