This is an automated email from the ASF dual-hosted git repository.
emilles pushed a commit to branch GROOVY_4_0_X
in repository https://gitbox.apache.org/repos/asf/groovy.git
The following commit(s) were added to refs/heads/GROOVY_4_0_X by this push:
new 503bd40234 STC: `extractType` discards placeholder unlike
`getCombinedBoundType`
503bd40234 is described below
commit 503bd402340b56de2cdb61e6711d8253ce6652c8
Author: Eric Milles <[email protected]>
AuthorDate: Wed Jun 11 13:56:14 2025 -0500
STC: `extractType` discards placeholder unlike `getCombinedBoundType`
---
.../org/codehaus/groovy/transform/stc/StaticTypeCheckingSupport.java | 2 +-
src/test/groovy/groovy/transform/stc/MethodReferenceTest.groovy | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
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 1969c8665e..c26e7d5b49 100644
---
a/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingSupport.java
+++
b/src/main/java/org/codehaus/groovy/transform/stc/StaticTypeCheckingSupport.java
@@ -1774,7 +1774,7 @@ public abstract class StaticTypeCheckingSupport {
extractGenericsConnections(spec, type, type.redirect());
} else if (type.redirect().getGenericsTypes() != null) {
for (GenericsType tp : type.redirect().getGenericsTypes())
{
- spec.put(new GenericsTypeName(tp.getName()), new
GenericsType(getCombinedBoundType(tp))); //GROOVY-10651
+ spec.put(new GenericsTypeName(tp.getName()), new
GenericsType(extractType(tp))); //GROOVY-10651
}
}
superClass = applyGenericsContext(spec, superClass);
diff --git a/src/test/groovy/groovy/transform/stc/MethodReferenceTest.groovy
b/src/test/groovy/groovy/transform/stc/MethodReferenceTest.groovy
index 50fc8df9a8..02ce5fa4ab 100644
--- a/src/test/groovy/groovy/transform/stc/MethodReferenceTest.groovy
+++ b/src/test/groovy/groovy/transform/stc/MethodReferenceTest.groovy
@@ -359,8 +359,8 @@ final class MethodReferenceTest {
assertScript shell, '''import java.util.stream.Stream
@CompileStatic
List<Integer> test(List<String> strings) {
-
Stream.of(strings).flatMap(List::stream).map(Integer::valueOf).toList()
- // ^^^^^^^^^^^^^^^^
+
Stream.of(strings).flatMap(List<String>::stream).map(Integer::valueOf).toList()
+ //
^^^^^^^^^^^^^^^^
// Failed to find class method 'valueOf(Object)' or instance
method 'valueOf()'
}