diff --git a/LanguageFeatures/Instantiate-to-bound/class/dynamic/class_typedef_l1_t03.dart b/LanguageFeatures/Instantiate-to-bound/class/dynamic/class_typedef_l1_t03.dart index 95fd9837cd..cb41d3d2e0 100644 --- a/LanguageFeatures/Instantiate-to-bound/class/dynamic/class_typedef_l1_t03.dart +++ b/LanguageFeatures/Instantiate-to-bound/class/dynamic/class_typedef_l1_t03.dart @@ -44,6 +44,8 @@ * []. * @description Checks that instantiation to bounds works OK for the class with * [typedef G = X Function(X)] parameter (invariant case). + * @Issue 44786 + * @Issue dart-lang/language#1133 * @author iarkh@unipro.ru */ @@ -52,9 +54,8 @@ import "../../../../Utils/expect.dart"; typedef G = X Function(X); class A>> {} +typedef expected = A Function(A)>; + main() { - Expect.equals( - typeOf>>>(), - typeOf() - ); + Expect.equals(expected, A); } diff --git a/LanguageFeatures/Instantiate-to-bound/class/dynamic/class_typedef_l2_t03.dart b/LanguageFeatures/Instantiate-to-bound/class/dynamic/class_typedef_l2_t03.dart index 371cb28e22..9af5b5971a 100644 --- a/LanguageFeatures/Instantiate-to-bound/class/dynamic/class_typedef_l2_t03.dart +++ b/LanguageFeatures/Instantiate-to-bound/class/dynamic/class_typedef_l2_t03.dart @@ -44,6 +44,8 @@ * []. * @description Checks that instantiation to bounds works OK for [typedef G = * Function(X)], [class A>, Y extends X>] (covariant) + * @Issue 44786 + * @Issue dart-lang/language#1133 * @author iarkh@unipro.ru */ @@ -52,9 +54,8 @@ import "../../../../Utils/expect.dart"; typedef G = X Function(X); class A>, Y extends X> {} +typedef expected = A Function(A), dynamic>; + main() { - Expect.equals( - typeOf>, dynamic>>(), - typeOf() - ); + Expect.equals(expected, A); } diff --git a/LanguageFeatures/Instantiate-to-bound/class/dynamic/class_typedef_l2_t07.dart b/LanguageFeatures/Instantiate-to-bound/class/dynamic/class_typedef_l2_t07.dart index b170ff467e..c533aadb97 100644 --- a/LanguageFeatures/Instantiate-to-bound/class/dynamic/class_typedef_l2_t07.dart +++ b/LanguageFeatures/Instantiate-to-bound/class/dynamic/class_typedef_l2_t07.dart @@ -44,6 +44,8 @@ * []. * @description Checks that instantiation to bounds works OK for [typedef G = * X Function(X)], [class A>, Y extends X>] (invariant) + * @Issue 44786 + * @Issue dart-lang/language#1133 * @author iarkh@unipro.ru */ @@ -52,9 +54,9 @@ import "../../../../Utils/expect.dart"; typedef G = X Function(X); class A>, Y extends G>> {} +typedef expected = A Function(A), + A Function(A)>; + main() { - Expect.equals( - typeOf>,G>>>(), - typeOf() - ); + Expect.equals(expected, A); } diff --git a/LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l1_t03.dart b/LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l1_t03.dart index 28946d0b7d..030e488557 100644 --- a/LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l1_t03.dart +++ b/LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l1_t03.dart @@ -44,7 +44,10 @@ * []. * @description Checks that instantiation to bounds works OK for [typedef G = * Function(X)], [class A>, Y extends X>] (covariant) - * @Issue 41963, 41964 + * + * @Issue 41963, 41964, 44786 + * @Issue dart-lang/language#1133 + * * @author iarkh@unipro.ru */ import "../../../../Utils/expect.dart"; @@ -52,68 +55,9 @@ import "../../../../Utils/expect.dart"; typedef G = X Function(X); class A>> {} -void test(A source) { - var fsource = toF(source); - - F>>> target = fsource; - - F>>> target0 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>>> target1 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F> target2 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>> target3 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>>>> target4 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>>>>> target5 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F> target6 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>> target7 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>>>> target8 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>>>>> target9 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F> targe10 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>> target11 = fsource; -// ^^^^^^^ +main() { + A? source; +// ^^^^^^ // [analyzer] unspecified // [cfe] unspecified @@ -121,6 +65,5 @@ void test(A source) { //^ // [analyzer] unspecified // [cfe] unspecified -} -main() {} +} diff --git a/LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l2_t03.dart b/LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l2_t03.dart index 86d7cc4187..89a51b83fe 100644 --- a/LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l2_t03.dart +++ b/LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l2_t03.dart @@ -44,6 +44,10 @@ * []. * @description Checks that instantiation to bounds works OK for [typedef G = * X Function(X)], [class A>, Y extends X>] + * + * @Issue 44786 + * @Issue dart-lang/language#1133 + * * @author iarkh@unipro.ru */ @@ -52,47 +56,10 @@ import "../../../../Utils/expect.dart"; typedef G = X Function(X); class A>, Y extends X> {} -test(A source) { - var fsource = toF(source); - F>, dynamic>> target = fsource; - F> target1 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, dynamic>> target2 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, dynamic>>, dynamic>> target3 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>, Never>> target4 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F> target5 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, Never>> target6 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>, Never>> target7 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>, Never>> target8 = fsource; -// ^^^^^^^ +main() { + A? source; +// ^^^^^^ // [analyzer] unspecified // [cfe] unspecified @@ -100,6 +67,5 @@ test(A source) { //^ // [analyzer] unspecified // [cfe] unspecified -} -main() {} +} diff --git a/LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l2_t07.dart b/LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l2_t07.dart index a430a01c9d..994eb897e0 100644 --- a/LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l2_t07.dart +++ b/LanguageFeatures/Instantiate-to-bound/class/static/class_typedef_l2_t07.dart @@ -44,7 +44,10 @@ * []. * @description Checks that instantiation to bounds works OK for [typedef G = * X Function(X)], [class A>, Y extends G>>] - * @Issue 41963, 41964 + * + * @Issue 41963, 41964, 44786 + * @Issue dart-lang/language#1133 + * * @author iarkh@unipro.ru */ @@ -53,83 +56,16 @@ import "../../../../Utils/expect.dart"; typedef G = X Function(X); class A>, Y extends G>> {} -void test(A source) { - var fsource = toF(source); - F>, G>>> target = fsource; - - F>>> target1 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, G>>> target2 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, dynamic>>, G>>> target3 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>, dynamic>> target4 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>, G>> target5 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>, G>>> target6 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>>> target7 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, G>>> target8 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - F, Never>>, G>>> target9 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>, Never>> target10 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>, G>> target11 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>, G>>> target12 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - F>, G>>> target13 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F>, G>>> target14 = fsource; -// ^^^^^^^ +main() { + A? source; +// ^^^^^^ // [analyzer] unspecified // [cfe] unspecified -} -main() { A(); //^ // [analyzer] unspecified // [cfe] unspecified + } diff --git a/LanguageFeatures/Instantiate-to-bound/typedef/dynamic/typedef_typedef_l1_t03.dart b/LanguageFeatures/Instantiate-to-bound/typedef/dynamic/typedef_typedef_l1_t03.dart index 2bd70c3c92..33f519c348 100644 --- a/LanguageFeatures/Instantiate-to-bound/typedef/dynamic/typedef_typedef_l1_t03.dart +++ b/LanguageFeatures/Instantiate-to-bound/typedef/dynamic/typedef_typedef_l1_t03.dart @@ -44,6 +44,10 @@ * []. * @description Checks that instantiate-to-bounds works correctly for * [typedef A = X Function(X); typedef G> = X Function()] + * + * @Issue 44786 + * @Issue dart-lang/language#1133 + * * @author iarkh@unipro.ru */ @@ -52,9 +56,8 @@ import "../../../../Utils/expect.dart"; typedef A = X Function(X); typedef G> = X Function(); +typedef expected = dynamic Function(dynamic) Function(); + main() { - Expect.equals( - typeOf>>(), - typeOf() - ); + Expect.equals(expected, G); } diff --git a/LanguageFeatures/Instantiate-to-bound/typedef/dynamic/typedef_typedef_l1_t07.dart b/LanguageFeatures/Instantiate-to-bound/typedef/dynamic/typedef_typedef_l1_t07.dart index a25f5589d8..180bb06656 100644 --- a/LanguageFeatures/Instantiate-to-bound/typedef/dynamic/typedef_typedef_l1_t07.dart +++ b/LanguageFeatures/Instantiate-to-bound/typedef/dynamic/typedef_typedef_l1_t07.dart @@ -44,6 +44,10 @@ * []. * @description Checks that instantiate-to-bounds works correctly for * [typedef A = X Function(X); typedef G> = X Function()] + * + * @Issue 44786 + * @Issue dart-lang/language#1133 + * * @author iarkh@unipro.ru */ @@ -52,9 +56,8 @@ import "../../../../Utils/expect.dart"; typedef A = X Function(X); typedef G> = void Function(X); +typedef expected = void Function(dynamic Function(dynamic)); + main() { - Expect.equals( - typeOf>>(), - typeOf() - ); + Expect.equals(expected, G); } diff --git a/LanguageFeatures/Instantiate-to-bound/typedef/dynamic/typedef_typedef_l1_t11.dart b/LanguageFeatures/Instantiate-to-bound/typedef/dynamic/typedef_typedef_l1_t11.dart index 78bf4799f6..0e77b8b382 100644 --- a/LanguageFeatures/Instantiate-to-bound/typedef/dynamic/typedef_typedef_l1_t11.dart +++ b/LanguageFeatures/Instantiate-to-bound/typedef/dynamic/typedef_typedef_l1_t11.dart @@ -44,6 +44,10 @@ * []. * @description Checks that instantiate-to-bounds works correctly for * [typedef A = X Function(X); typedef G> = X Function(X)] + * + * @Issue 44786 + * @Issue dart-lang/language#1133 + * * @author iarkh@unipro.ru */ @@ -52,9 +56,8 @@ import "../../../../Utils/expect.dart"; typedef A = X Function(X); typedef G> = X Function(X); +typedef expected = dynamic Function(dynamic) Function(dynamic Function(dynamic)); + main() { - Expect.equals( - typeOf>>(), - typeOf() - ); + Expect.equals(expected, G); } diff --git a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t01.dart b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t01.dart index 878e22cb70..0a9c0e3275 100644 --- a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t01.dart +++ b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t01.dart @@ -45,48 +45,20 @@ * @description Checks that instantiate-to-bounds works correctly for [typedef] * with two related parameters: [typedef G, Y extends A> = X * Function(Y)] - * @Issue 34689, 34699, 41963, 41964 + * + * @Issue 34689, 34699, 41963, 41964, 44786 + * @Issue dart-lang/language#1133 * * @author iarkh@unipro.ru */ -import "../../../../Utils/expect.dart"; - class A {} typedef G, Y extends A> = X Function(Y); -test(G source) { - var fsource = toF(source); - - F, A>> target = fsource; - - F, A>> target1 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target2 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target3 = fsource; -// ^^^^^^^ +main() { + G? source; +// ^^^^^^ // [analyzer] unspecified // [cfe] unspecified - F, A>> target4 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target5 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target6 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified -} +} \ No newline at end of file diff --git a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t02.dart b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t02.dart index b68518b57b..43a49b9306 100644 --- a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t02.dart +++ b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t02.dart @@ -46,49 +46,18 @@ * with two related parameters: [typedef G, Y extends A> = Y * Function(X)] * - * @Issue 41963, 41964 + * @Issue 41963, 41964, 44786 + * @Issue dart-lang/language#1133 + * * @author iarkh@unipro.ru */ -import "../../../../Utils/expect.dart"; - class A {} typedef G, Y extends A> = Y Function(X); -test(G source) { - var fsource = toF(source); - - F, A>> target = fsource; - - F, A>> target1 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target2 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target3 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target4 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target5 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target6 = fsource; -// ^^^^^^^ +main() { + G? source; +// ^^^^^^ // [analyzer] unspecified // [cfe] unspecified } - -main() {} diff --git a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t03.dart b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t03.dart index 953485f402..370b256236 100644 --- a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t03.dart +++ b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t03.dart @@ -46,50 +46,19 @@ * with two related parameters: [typedef G, Y extends A> = X * Function(X, Y)] * - * @Issue 41963, 41964 + * @Issue 41963, 41964, 44786 + * @Issue dart-lang/language#1133 * * @author iarkh@unipro.ru */ -import "../../../../Utils/expect.dart"; - class A {} typedef G, Y extends A> = X Function(X, Y); -test(G source) { - var fsource = toF(source); - - F, A>> target = fsource; - - F, A>> target1 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target2 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target3 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target4 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target5 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target6 = fsource; -// ^^^^^^^ +main() { + G? source; +// ^^^^^^ // [analyzer] unspecified // [cfe] unspecified -} -main() {} +} \ No newline at end of file diff --git a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t04.dart b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t04.dart index d27dd7623c..b8eddf03b9 100644 --- a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t04.dart +++ b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t04.dart @@ -46,50 +46,18 @@ * with two related parameters: [typedef G, Y extends A> = Y * Function(X, Y)] * - * @Issue 41963, 41964 + * @Issue 41963, 41964, 44786 + * @Issue dart-lang/language#1133 * * @author iarkh@unipro.ru */ -import "../../../../Utils/expect.dart"; - class A {} typedef G, Y extends A> = Y Function(X, Y); -test(G source) { - var fsource = toF(source); - - F, A>> target = fsource; - - F, A>> target1 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target2 = fsource; -// ^^^^^^^ +main() { + G? source; +// ^^^^^^ // [analyzer] unspecified // [cfe] unspecified - - F, A>> target3 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target4 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target5 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - F, A>> target6 = fsource; -// ^^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified -} - -main() {} +} \ No newline at end of file diff --git a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t10.dart b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t10.dart index 98f66ed934..b3e8de60f7 100644 --- a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t10.dart +++ b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t10.dart @@ -46,7 +46,8 @@ * with two related parameters: [typedef G, Y extends A> = * void Function(Y)] * - * @Issue 41963, 41964 + * @Issue 41963, 41964, 44786 + * @Issue dart-lang/language#1133 * * @author iarkh@unipro.ru */ @@ -54,45 +55,10 @@ class A {} typedef G, Y extends A> = void Function(Y); -test(G source) { - void Function>(Never) target1 = source; - - void Function>(A) target2 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - void Function>(A) target3 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - void Function>(A) target4 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - void Function>(A) target5 = source; - - void Function>(dynamic) target6 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - void Function>(Null) target7 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - void Function(Never) target8 = source; -// ^^^^^^ +main() { + G? source; +// ^^^^^^ // [analyzer] unspecified // [cfe] unspecified - void Function(Never) target9 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified } - -main() {} diff --git a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t11.dart b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t11.dart index 5d8ae0da0d..fb8742e4b9 100644 --- a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t11.dart +++ b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t11.dart @@ -46,7 +46,8 @@ * with two related parameters: [typedef G, Y extends A> = * void Function(X, Y)] * - * @Issue 41963, 41964 + * @Issue 41963, 41964, 44786 + * @Issue dart-lang/language#1133 * * @author iarkh@unipro.ru */ @@ -54,46 +55,10 @@ class A {} typedef G, Y extends A> = void Function(X, Y); -test(G source) { - void Function>(A, A) target1 = source; - - void Function>(A, A) target2 = source; - - void Function>(A, A) target3 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - void Function>(A, A) target4 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - void Function>(A, A) target5 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - void Function>(A, A) target6 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - void Function>(A, A) target7 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - void Function>(A, A) target8 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - void Function>(A, A) target9 = source; -// ^^^^^^ +main() { + G? source; +// ^^^^^^ // [analyzer] unspecified // [cfe] unspecified } - -main() {} diff --git a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t12.dart b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t12.dart index bc435cec65..18a9422a36 100644 --- a/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t12.dart +++ b/LanguageFeatures/Instantiate-to-bound/typedef/static/typedef_l2_01_t12.dart @@ -46,7 +46,8 @@ * with two related parameters: [typedef G, Y extends A> = * void Function(X)] * - * @Issue 41963, 41964 + * @Issue 41963, 41964, 44786 + * @Issue dart-lang/language#1133 * * @author iarkh@unipro.ru */ @@ -54,28 +55,10 @@ class A {} typedef G, Y extends A> = void Function(X); -test(G source) { - void Function>(A) target1 = source; - - void Function>(A) target2 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - void Function>(A) target3 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified - - void Function>(A) target4 = source; -// ^^^^^^ +main() { + G? source; +// ^^^^^^ // [analyzer] unspecified // [cfe] unspecified - void Function>(A) target5 = source; -// ^^^^^^ -// [analyzer] unspecified -// [cfe] unspecified } - -main() {}