Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(29)

Side by Side Diff: pkg/analyzer/test/src/task/strong/checker_test.dart

Issue 2188403002: Revert "fix #26141, add support for type arguments to constants" (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « pkg/analyzer/test/src/dart/constant/evaluation_test.dart ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library analyzer.test.src.task.strong.checker_test; 5 library analyzer.test.src.task.strong.checker_test;
6 6
7 import '../../../reflective_tests.dart'; 7 import '../../../reflective_tests.dart';
8 import 'strong_test_helper.dart'; 8 import 'strong_test_helper.dart';
9 9
10 void main() { 10 void main() {
(...skipping 2146 matching lines...) Expand 10 before | Expand all | Expand 10 after
2157 var /*error:IMPLICIT_DYNAMIC_VARIABLE*/x1 = (<dynamic>[])[0]; 2157 var /*error:IMPLICIT_DYNAMIC_VARIABLE*/x1 = (<dynamic>[])[0];
2158 var /*error:IMPLICIT_DYNAMIC_VARIABLE*/x2, 2158 var /*error:IMPLICIT_DYNAMIC_VARIABLE*/x2,
2159 x3 = 42, 2159 x3 = 42,
2160 /*error:IMPLICIT_DYNAMIC_VARIABLE*/x4; 2160 /*error:IMPLICIT_DYNAMIC_VARIABLE*/x4;
2161 dynamic y0; 2161 dynamic y0;
2162 dynamic y1 = (<dynamic>[])[0]; 2162 dynamic y1 = (<dynamic>[])[0];
2163 '''); 2163 ''');
2164 check(implicitDynamic: false); 2164 check(implicitDynamic: false);
2165 } 2165 }
2166 2166
2167 void test_constantGenericTypeArg_infer() {
2168 // Regression test for https://github.com/dart-lang/sdk/issues/26141
2169 checkFile('''
2170 abstract class Equality<Q> {}
2171 abstract class EqualityBase<R> implements Equality<R> {
2172 final C<R> c = /*info:INFERRED_TYPE_ALLOCATION*/const C();
2173 const EqualityBase();
2174 }
2175 class DefaultEquality<S> extends EqualityBase<S> {
2176 const DefaultEquality();
2177 }
2178 class SetEquality<T> implements Equality<T> {
2179 final Equality<T> field = const DefaultEquality();
2180 const SetEquality([Equality<T> inner = const DefaultEquality()]);
2181 }
2182 class C<Q> {
2183 final List<Q> list = /*info:INFERRED_TYPE_LITERAL*/const [];
2184 final Map<Q, Iterable<Q>> m = /*info:INFERRED_TYPE_LITERAL*/const {};
2185 const C();
2186 }
2187 main() {
2188 const SetEquality<String>();
2189 }
2190 ''');
2191 }
2192
2193 void test_constantGenericTypeArg_explict() {
2194 // Regression test for https://github.com/dart-lang/sdk/issues/26141
2195 checkFile('''
2196 abstract class Equality<R> {}
2197 abstract class EqualityBase<R> implements Equality<R> {
2198 final C<R> c = const C<R>();
2199 const EqualityBase();
2200 }
2201 class DefaultEquality<S> extends EqualityBase<S> {
2202 const DefaultEquality();
2203 }
2204 class SetEquality<T> implements Equality<T> {
2205 final Equality<T> field = const DefaultEquality<T>();
2206 const SetEquality([Equality<T> inner = const DefaultEquality<T>()]);
2207 }
2208 class C<Q> {
2209 final List<Q> list = const <Q>[];
2210 final Map<Q, Iterable<Q>> m = const <Q, Iterable<Q>>{};
2211 const C();
2212 }
2213 main() {
2214 const SetEquality<String>();
2215 }
2216 ''');
2217 }
2218
2219 void test_invalidOverrides_baseClassOverrideToChildInterface() { 2167 void test_invalidOverrides_baseClassOverrideToChildInterface() {
2220 checkFile(''' 2168 checkFile('''
2221 class A {} 2169 class A {}
2222 class B {} 2170 class B {}
2223 2171
2224 abstract class I { 2172 abstract class I {
2225 m(A a); 2173 m(A a);
2226 } 2174 }
2227 2175
2228 class Base { 2176 class Base {
(...skipping 1380 matching lines...) Expand 10 before | Expand all | Expand 10 after
3609 // Regression test for https://github.com/dart-lang/sdk/issues/25069 3557 // Regression test for https://github.com/dart-lang/sdk/issues/25069
3610 checkFile(''' 3558 checkFile('''
3611 typedef int Foo(); 3559 typedef int Foo();
3612 void foo() {} 3560 void foo() {}
3613 void main () { 3561 void main () {
3614 Foo x = /*error:INVALID_ASSIGNMENT,info:USE_OF_VOID_RESULT*/foo(); 3562 Foo x = /*error:INVALID_ASSIGNMENT,info:USE_OF_VOID_RESULT*/foo();
3615 } 3563 }
3616 '''); 3564 ''');
3617 } 3565 }
3618 } 3566 }
OLDNEW
« no previous file with comments | « pkg/analyzer/test/src/dart/constant/evaluation_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698