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 2022/05/16 14:36:05 UTC
[groovy] branch master updated: GROOVY-10373: add test case
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 6b31aa6928 GROOVY-10373: add test case
6b31aa6928 is described below
commit 6b31aa69287726a0a19b4784d9d043ea5130a43f
Author: Eric Milles <er...@thomsonreuters.com>
AuthorDate: Mon May 16 09:33:35 2022 -0500
GROOVY-10373: add test case
---
.../groovy/transform/stc/GenericsSTCTest.groovy | 23 ++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/src/test/groovy/transform/stc/GenericsSTCTest.groovy b/src/test/groovy/transform/stc/GenericsSTCTest.groovy
index 2c03f99429..71b3029077 100644
--- a/src/test/groovy/transform/stc/GenericsSTCTest.groovy
+++ b/src/test/groovy/transform/stc/GenericsSTCTest.groovy
@@ -2338,6 +2338,29 @@ class GenericsSTCTest extends StaticTypeCheckingTestCase {
'''
}
+ // GROOVY-10373
+ void testAssignNullTypeParameterWithUpperBounds2() {
+ assertScript '''
+ class A<I, E extends I> {
+ void bar(E y) { }
+ }
+ class B<T> {
+ }
+ class C<S extends B<Character>> {
+ A<S, ? extends S> foo() {
+ (A<S, ? extends S>) null
+ }
+ }
+ class D<I extends B<Character>> {
+ void test() {
+ C<I> x = (C<I>) null
+ x?.foo()?.bar(null)
+ }
+ }
+ new D<B<Character>>().test()
+ '''
+ }
+
void testMethodCallWithArgumentUsingNestedGenerics() {
assertScript '''
ThreadLocal<Map<Integer, String>> cachedConfigs = new ThreadLocal<Map<Integer, String>>()