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

Unified Diff: pkg/analyzer/test/generated/compile_time_error_code_test.dart

Issue 1170863002: Remove extra CompileTimeErrorCode.DUPLICATE_DEFINITION. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: pkg/analyzer/test/generated/compile_time_error_code_test.dart
diff --git a/pkg/analyzer/test/generated/compile_time_error_code_test.dart b/pkg/analyzer/test/generated/compile_time_error_code_test.dart
index abea165f789d5dede42bcc438a13f4188918165c..461c6283ca3362c7c567fe37c7cdd36990bc711e 100644
--- a/pkg/analyzer/test/generated/compile_time_error_code_test.dart
+++ b/pkg/analyzer/test/generated/compile_time_error_code_test.dart
@@ -19,6 +19,15 @@ main() {
@reflectiveTest
class CompileTimeErrorCodeTest extends ResolverTestCase {
+ /**
+ * Computes errors for the given [librarySource].
+ * This assumes that the given [librarySource] and its parts have already
+ * been added to the content provider using the method [addNamedSource].
+ */
+ void computeLibrarySourceErrors(Source librarySource) {
+ analysisContext.computeErrors(librarySource);
+ }
+
void fail_awaitInWrongContext_sync() {
// This test requires better error recovery than we currently have. In
// particular, we need to be able to distinguish between an await expression
@@ -27,7 +36,7 @@ class CompileTimeErrorCodeTest extends ResolverTestCase {
f(x) {
return await x;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.AWAIT_IN_WRONG_CONTEXT]);
verify([source]);
}
@@ -40,7 +49,7 @@ f(x) {
f(x) sync* {
yield await x;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.AWAIT_IN_WRONG_CONTEXT]);
verify([source]);
}
@@ -48,7 +57,7 @@ f(x) sync* {
void fail_compileTimeConstantRaisesException() {
Source source = addSource(r'''
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.COMPILE_TIME_CONSTANT_RAISES_EXCEPTION]);
verify([source]);
@@ -60,7 +69,7 @@ class C {
const C();
}
f() { return const C(); }''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONST_CONSTRUCTOR_THROWS_EXCEPTION]);
verify([source]);
@@ -74,7 +83,7 @@ class A {
int async;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_IDENTIFIER_IN_ASYNC]);
verify([source]);
}
@@ -87,7 +96,7 @@ class A {
int await;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_IDENTIFIER_IN_ASYNC]);
verify([source]);
}
@@ -100,7 +109,7 @@ class A {
int yield;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_IDENTIFIER_IN_ASYNC]);
verify([source]);
}
@@ -111,7 +120,7 @@ class A {
A() {}
}
class B extends Object mixin A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_DECLARES_CONSTRUCTOR]);
verify([source]);
}
@@ -121,7 +130,7 @@ class B extends Object mixin A {}''');
Source source = addSource(r'''
var A;
class B extends Object mixin A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_NON_CLASS]);
verify([source]);
}
@@ -129,7 +138,7 @@ class B extends Object mixin A {}''');
void fail_objectCannotExtendAnotherClass() {
Source source = addSource(r'''
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.OBJECT_CANNOT_EXTEND_ANOTHER_CLASS]);
verify([source]);
@@ -138,7 +147,7 @@ class B extends Object mixin A {}''');
void fail_superInitializerInObject() {
Source source = addSource(r'''
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.SUPER_INITIALIZER_IN_OBJECT]);
verify([source]);
}
@@ -150,7 +159,7 @@ class B extends Object mixin A {}''');
f() async {
yield* 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.YIELD_EACH_IN_NON_GENERATOR]);
verify([source]);
}
@@ -162,7 +171,7 @@ f() async {
f() {
yield* 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.YIELD_IN_NON_GENERATOR]);
verify([source]);
}
@@ -174,7 +183,7 @@ f() {
f() async {
yield 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.YIELD_IN_NON_GENERATOR]);
verify([source]);
}
@@ -186,7 +195,7 @@ f() async {
f() {
yield 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.YIELD_EACH_IN_NON_GENERATOR]);
verify([source]);
}
@@ -197,7 +206,7 @@ enum E { ONE }
String name(E e) {
return e._name;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.ACCESS_PRIVATE_ENUM_FIELD]);
// Cannot verify because "_name" cannot be resolved.
}
@@ -213,7 +222,7 @@ class N {}''');
addNamedSource("/lib2.dart", r'''
library lib2;
class N {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.AMBIGUOUS_EXPORT]);
verify([source]);
}
@@ -226,7 +235,7 @@ f() async {
g(0);
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -239,7 +248,7 @@ f() async {
new C().g(async: 0);
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
// Note: we don't call verify([source]) because verify() doesn't understand
// about @proxy.
@@ -251,7 +260,7 @@ f() async {
var async = 1;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -262,7 +271,7 @@ f() async* {
var async = 1;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -275,7 +284,7 @@ f() async {
}
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER,
CompileTimeErrorCode.LABEL_UNDEFINED
@@ -293,7 +302,7 @@ f() async {
return new C()..async();
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -307,7 +316,7 @@ f() async {
return new C()..async = 1;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -321,7 +330,7 @@ f() async {
} catch (async) { }
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -335,7 +344,7 @@ f() async {
} catch (e, async) { }
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -348,7 +357,7 @@ f() async {
}
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER,
CompileTimeErrorCode.LABEL_UNDEFINED
@@ -364,7 +373,7 @@ f() async {
for (async in []) {}
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -376,7 +385,7 @@ f() async {
g(0);
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -390,7 +399,7 @@ f() async {
return new C().async;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -404,7 +413,7 @@ f() async {
return new C().async();
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -415,7 +424,7 @@ f() async {
int async() => null;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -427,7 +436,7 @@ f() async {
return new async.Future.value(0);
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -441,7 +450,7 @@ f() async {
new C().async = 1;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -453,7 +462,7 @@ f() async {
}
g() {}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -465,7 +474,7 @@ f() async {
return "$async";
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -481,7 +490,7 @@ f() async {
return l.async;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -494,7 +503,7 @@ f() async {
}
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -505,7 +514,7 @@ f() sync* {
var async = 1;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -516,7 +525,7 @@ f(list) {
await for (var e in list) {
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.ASYNC_FOR_IN_WRONG_CONTEXT]);
verify([source]);
}
@@ -527,7 +536,7 @@ f() async {
var await = 1;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -538,7 +547,7 @@ f() async* {
var await = 1;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -549,7 +558,7 @@ f() sync* {
var await = 1;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -563,7 +572,7 @@ class B {
dynamic @A(const A()) x;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
ParserErrorCode.EXPECTED_CLASS_MEMBER,
ParserErrorCode.MISSING_CONST_FINAL_VAR_OR_TYPE
@@ -576,7 +585,7 @@ class B {
class A {}
class B {}
class as = A with B;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.BUILT_IN_IDENTIFIER_AS_TYPEDEF_NAME]);
verify([source]);
@@ -588,7 +597,7 @@ class A {
var x;
A(static this.x);
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.BUILT_IN_IDENTIFIER_AS_TYPE]);
verify([source]);
}
@@ -597,7 +606,7 @@ class A {
Source source = addSource(r'''
f(static x) {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.BUILT_IN_IDENTIFIER_AS_TYPE]);
verify([source]);
}
@@ -607,14 +616,14 @@ f(static x) {
f() {
typedef x;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.BUILT_IN_IDENTIFIER_AS_TYPE]);
verify([source]);
}
void test_builtInIdentifierAsTypedefName_functionTypeAlias() {
Source source = addSource("typedef bool as();");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.BUILT_IN_IDENTIFIER_AS_TYPEDEF_NAME]);
verify([source]);
@@ -622,7 +631,7 @@ f() {
void test_builtInIdentifierAsTypeName() {
Source source = addSource("class as {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.BUILT_IN_IDENTIFIER_AS_TYPE_NAME]);
verify([source]);
@@ -630,7 +639,7 @@ f() {
void test_builtInIdentifierAsTypeParameterName() {
Source source = addSource("class A<as> {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.BUILT_IN_IDENTIFIER_AS_TYPE_PARAMETER_NAME]);
verify([source]);
@@ -653,7 +662,7 @@ f(var a) {
default: return 0;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CASE_EXPRESSION_TYPE_IMPLEMENTS_EQUALS]);
verify([source]);
@@ -665,7 +674,7 @@ class A {
int x;
A.x() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONFLICTING_CONSTRUCTOR_NAME_AND_FIELD]);
verify([source]);
@@ -677,7 +686,7 @@ class A {
const A.x();
void x() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONFLICTING_CONSTRUCTOR_NAME_AND_METHOD]);
verify([source]);
@@ -691,7 +700,7 @@ class A {
class B extends A {
m() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONFLICTING_GETTER_AND_METHOD]);
verify([source]);
}
@@ -704,7 +713,7 @@ class A {
class B extends A {
m() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONFLICTING_GETTER_AND_METHOD]);
verify([source]);
}
@@ -717,7 +726,7 @@ class A {
class B extends A {
int m;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONFLICTING_METHOD_AND_GETTER]);
verify([source]);
}
@@ -730,7 +739,7 @@ class A {
class B extends A {
get m => 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONFLICTING_METHOD_AND_GETTER]);
verify([source]);
}
@@ -739,7 +748,7 @@ class B extends A {
Source source = addSource(r'''
class T<T> {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_CLASS]);
verify([source]);
@@ -750,7 +759,7 @@ class T<T> {
class A<T> {
var T;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_MEMBER]);
verify([source]);
@@ -761,7 +770,7 @@ class A<T> {
class A<T> {
get T => null;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_MEMBER]);
verify([source]);
@@ -772,7 +781,7 @@ class A<T> {
class A<T> {
T() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_MEMBER]);
verify([source]);
@@ -783,7 +792,7 @@ class A<T> {
class A<T> {
static T() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_MEMBER]);
verify([source]);
@@ -794,7 +803,7 @@ class A<T> {
class A<T> {
set T(x) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONFLICTING_TYPE_VARIABLE_AND_MEMBER]);
verify([source]);
@@ -820,7 +829,7 @@ foo(var p) {
break;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertNoErrors(source);
verify([source]);
}
@@ -834,7 +843,7 @@ class A {
int f() {
return 3;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
// TODO(paulberry): the error CONST_INITIALIZED_WITH_NON_CONSTANT_VALUE is
// redundant and ought to be suppressed.
assertErrors(source, [
@@ -853,7 +862,7 @@ class A {
int f() {
return 3;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertNoErrors(source);
verify([source]);
}
@@ -865,7 +874,7 @@ class M {
class A extends Object with M {
const A();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONST_CONSTRUCTOR_WITH_MIXIN]);
verify([source]);
}
@@ -878,7 +887,7 @@ class A {
class B extends A {
const B(): super();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONST_CONSTRUCTOR_WITH_NON_CONST_SUPER]);
verify([source]);
@@ -892,7 +901,7 @@ class A {
class B extends A {
const B();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONST_CONSTRUCTOR_WITH_NON_CONST_SUPER]);
verify([source]);
@@ -906,7 +915,7 @@ class A {
class B extends Object with A {
const B();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_CONSTRUCTOR_WITH_MIXIN,
CompileTimeErrorCode.CONST_CONSTRUCTOR_WITH_NON_FINAL_FIELD
@@ -922,7 +931,7 @@ class A {
class B extends A {
const B();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_CONSTRUCTOR_WITH_NON_FINAL_FIELD,
CompileTimeErrorCode.CONST_CONSTRUCTOR_WITH_NON_CONST_SUPER
@@ -936,7 +945,7 @@ class A {
int x;
const A();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONST_CONSTRUCTOR_WITH_NON_FINAL_FIELD]);
verify([source]);
@@ -980,7 +989,7 @@ class A {
const A();
}
const a = new A();''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.CONST_INITIALIZED_WITH_NON_CONSTANT_VALUE]);
verify([source]);
@@ -994,7 +1003,7 @@ class A {
external factory const A();
}
const x = const A();''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertNoErrors(source);
verify([source]);
}
@@ -1007,7 +1016,7 @@ class A {
}
final a = const A();
const C = a.m;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.CONST_INITIALIZED_WITH_NON_CONSTANT_VALUE]);
verify([source]);
@@ -1025,28 +1034,28 @@ const C = a.m;''');
void test_constEvalThrowsException_divisionByZero() {
Source source = addSource("const C = 1 ~/ 0;");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONST_EVAL_THROWS_IDBZE]);
verify([source]);
}
void test_constEvalThrowsException_unaryBitNot_null() {
Source source = addSource("const C = ~null;");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONST_EVAL_THROWS_EXCEPTION]);
// no verify(), '~null' is not resolved
}
void test_constEvalThrowsException_unaryNegated_null() {
Source source = addSource("const C = -null;");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONST_EVAL_THROWS_EXCEPTION]);
// no verify(), '-null' is not resolved
}
void test_constEvalThrowsException_unaryNot_null() {
Source source = addSource("const C = !null;");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONST_EVAL_THROWS_EXCEPTION]);
verify([source]);
}
@@ -1058,7 +1067,7 @@ const C = a.m;''');
void test_constEvalTypeBool_binary_leftTrue() {
Source source = addSource("const C = (true || 0);");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_EVAL_TYPE_BOOL,
StaticTypeWarningCode.NON_BOOL_OPERAND,
@@ -1076,7 +1085,7 @@ class B {
final a;
const B(num p) : a = p == const A();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONST_EVAL_TYPE_BOOL_NUM_STRING]);
verify([source]);
@@ -1091,7 +1100,7 @@ class B {
final a;
const B(String p) : a = p != const A();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONST_EVAL_TYPE_BOOL_NUM_STRING]);
verify([source]);
@@ -1124,14 +1133,14 @@ class A {
var x;
A(const this.x) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONST_FORMAL_PARAMETER]);
verify([source]);
}
void test_constFormalParameter_simpleFormalParameter() {
Source source = addSource("f(const x) {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONST_FORMAL_PARAMETER]);
verify([source]);
}
@@ -1141,7 +1150,7 @@ class A {
f(p) {
const C = p;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.CONST_INITIALIZED_WITH_NON_CONSTANT_VALUE]);
verify([source]);
@@ -1149,7 +1158,7 @@ f(p) {
void test_constInitializedWithNonConstValue_missingConstInListLiteral() {
Source source = addSource("const List L = [0];");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.CONST_INITIALIZED_WITH_NON_CONSTANT_VALUE]);
verify([source]);
@@ -1157,7 +1166,7 @@ f(p) {
void test_constInitializedWithNonConstValue_missingConstInMapLiteral() {
Source source = addSource("const Map M = {'a' : 0};");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.CONST_INITIALIZED_WITH_NON_CONSTANT_VALUE]);
verify([source]);
@@ -1196,7 +1205,7 @@ const B = a.V + 1;'''
class C {
const int f = 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONST_INSTANCE_FIELD]);
verify([source]);
}
@@ -1210,7 +1219,7 @@ class A {
main() {
const {const A() : 0};
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.CONST_MAP_KEY_EXPRESSION_TYPE_IMPLEMENTS_EQUALS]);
verify([source]);
@@ -1231,7 +1240,7 @@ class B {
main() {
const {B.a : 0};
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.CONST_MAP_KEY_EXPRESSION_TYPE_IMPLEMENTS_EQUALS]);
verify([source]);
@@ -1250,7 +1259,7 @@ class B implements A {
main() {
var m = const { const A(): 42 };
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.CONST_MAP_KEY_EXPRESSION_TYPE_IMPLEMENTS_EQUALS]);
verify([source]);
@@ -1268,7 +1277,7 @@ class B extends A {
main() {
const {const B() : 0};
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.CONST_MAP_KEY_EXPRESSION_TYPE_IMPLEMENTS_EQUALS]);
verify([source]);
@@ -1280,7 +1289,7 @@ class A {
const A();
}
f() { return const A<A>(); }''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONST_WITH_INVALID_TYPE_PARAMETERS]);
verify([source]);
@@ -1295,7 +1304,7 @@ class C<K, V> {
f(p) {
return const C<A>();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONST_WITH_INVALID_TYPE_PARAMETERS]);
verify([source]);
@@ -1310,7 +1319,7 @@ class C<E> {
f(p) {
return const C<A, A>();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONST_WITH_INVALID_TYPE_PARAMETERS]);
verify([source]);
@@ -1322,7 +1331,7 @@ class T {
T(a, b, {c, d}) {}
}
f() { return const T(0, 1, c: 2, d: 3); }''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONST_WITH_NON_CONST]);
verify([source]);
}
@@ -1336,7 +1345,7 @@ var v = 42;
@A(v)
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONST_WITH_NON_CONSTANT_ARGUMENT]);
verify([source]);
@@ -1348,7 +1357,7 @@ class A {
const A(a);
}
f(p) { return const A(p); }''');
- resolve(source);
+ computeLibrarySourceErrors(source);
// TODO(paulberry): the error INVALID_CONSTAT is redundant and ought to be
// suppressed.
assertErrors(source, [
@@ -1364,7 +1373,7 @@ int A;
f() {
return const A();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONST_WITH_NON_TYPE]);
verify([source]);
}
@@ -1376,8 +1385,8 @@ import 'lib.dart' as lib;
void f() {
const lib.A();
}''');
- resolve(source1);
- resolve(source2);
+ computeLibrarySourceErrors(source1);
+ computeLibrarySourceErrors(source2);
assertErrors(source2, [CompileTimeErrorCode.CONST_WITH_NON_TYPE]);
verify([source1]);
}
@@ -1388,7 +1397,7 @@ class A<T> {
static const V = const A<T>();
const A();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_WITH_TYPE_PARAMETERS,
StaticWarningCode.TYPE_PARAMETER_REFERENCED_BY_STATIC
@@ -1402,7 +1411,7 @@ class A<T> {
static const V = const A<List<T>>();
const A();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_WITH_TYPE_PARAMETERS,
StaticWarningCode.TYPE_PARAMETER_REFERENCED_BY_STATIC
@@ -1418,7 +1427,7 @@ class A {
f() {
return const A.noSuchConstructor();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.CONST_WITH_UNDEFINED_CONSTRUCTOR]);
// no verify(), 'noSuchConstructor' is not resolved
@@ -1432,7 +1441,7 @@ class A {
f() {
return const A();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.CONST_WITH_UNDEFINED_CONSTRUCTOR_DEFAULT]);
verify([source]);
@@ -1440,7 +1449,7 @@ f() {
void test_defaultValueInFunctionTypeAlias() {
Source source = addSource("typedef F([x = 0]);");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.DEFAULT_VALUE_IN_FUNCTION_TYPE_ALIAS]);
verify([source]);
@@ -1448,7 +1457,7 @@ f() {
void test_defaultValueInFunctionTypedParameter_named() {
Source source = addSource("f(g({p: null})) {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.DEFAULT_VALUE_IN_FUNCTION_TYPED_PARAMETER]);
verify([source]);
@@ -1456,7 +1465,7 @@ f() {
void test_defaultValueInFunctionTypedParameter_optional() {
Source source = addSource("f(g([p = null])) {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.DEFAULT_VALUE_IN_FUNCTION_TYPED_PARAMETER]);
verify([source]);
@@ -1471,7 +1480,7 @@ class A {
class B implements A {
B([int x = 1]) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.DEFAULT_VALUE_IN_REDIRECTING_FACTORY_CONSTRUCTOR
]);
@@ -1484,7 +1493,7 @@ class A {
A.a() {}
A.a() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.DUPLICATE_CONSTRUCTOR_NAME,
CompileTimeErrorCode.DUPLICATE_CONSTRUCTOR_NAME
@@ -1498,7 +1507,7 @@ class A {
A() {}
A() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.DUPLICATE_CONSTRUCTOR_DEFAULT,
CompileTimeErrorCode.DUPLICATE_CONSTRUCTOR_DEFAULT
@@ -1506,17 +1515,6 @@ class A {
verify([source]);
}
- void test_duplicateDefinition() {
- Source source = addSource(r'''
-f() {
- int m = 0;
- m(a) {}
-}''');
- resolve(source);
- assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
- verify([source]);
- }
-
void test_duplicateDefinition_acrossLibraries() {
Source librarySource = addNamedSource("/lib.dart", r'''
library lib;
@@ -1531,18 +1529,28 @@ class A {}''');
part of lib;
class A {}''');
- resolve(librarySource);
+ computeLibrarySourceErrors(librarySource);
assertErrors(sourceB, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
verify([librarySource, sourceA, sourceB]);
}
+ void test_duplicateDefinition_catch() {
+ Source source = addSource(r'''
+main() {
+ try {} catch (e, e) {}
+}''');
+ computeLibrarySourceErrors(source);
+ assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
+ verify([source]);
+ }
+
void test_duplicateDefinition_classMembers_fields() {
Source source = addSource(r'''
class A {
int a;
int a;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
verify([source]);
}
@@ -1553,7 +1561,7 @@ class A {
int x;
static int x;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
verify([source]);
}
@@ -1564,12 +1572,50 @@ class A {
m() {}
m() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
verify([source]);
}
- void test_duplicateDefinition_localFields() {
+ void test_duplicateDefinition_locals_inCase() {
+ Source source = addSource(r'''
+main() {
+ switch(1) {
+ case 1:
+ var a;
+ var a;
+ }
+}''');
+ computeLibrarySourceErrors(source);
+ assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
+ verify([source]);
+ }
+
+ void test_duplicateDefinition_locals_inFunctionBlock() {
+ Source source = addSource(r'''
+main() {
+ int m = 0;
+ m(a) {}
+}''');
+ computeLibrarySourceErrors(source);
+ assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
+ verify([source]);
+ }
+
+ void test_duplicateDefinition_locals_inIf() {
+ Source source = addSource(r'''
+main(int p) {
+ if (p != 0) {
+ var a;
+ var a;
+ }
+}''');
+ computeLibrarySourceErrors(source);
+ assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
+ verify([source]);
+ }
+
+ void test_duplicateDefinition_locals_inMethodBlock() {
Source source = addSource(r'''
class A {
m() {
@@ -1577,7 +1623,56 @@ class A {
int a;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
+ assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
+ verify([source]);
+ }
+
+ void test_duplicateDefinition_parameters_inFunctionTypeAlias() {
+ Source source = addSource(r'''
+typedef F(int a, double a);
+''');
+ computeLibrarySourceErrors(source);
+ assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
+ verify([source]);
+ }
+
+ void test_duplicateDefinition_parameters_inLocalFunction() {
+ Source source = addSource(r'''
+main() {
+ f(int a, double a) {
+ };
+}''');
+ computeLibrarySourceErrors(source);
+ assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
+ verify([source]);
+ }
+
+ void test_duplicateDefinition_parameters_inMethod() {
+ Source source = addSource(r'''
+class A {
+ m(int a, double a) {
+ }
+}''');
+ computeLibrarySourceErrors(source);
+ assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
+ verify([source]);
+ }
+
+ void test_duplicateDefinition_parameters_inTopLevelFunction() {
+ Source source = addSource(r'''
+f(int a, double a) {
+}''');
+ computeLibrarySourceErrors(source);
+ assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
+ verify([source]);
+ }
+
+ void test_duplicateDefinition_typeParameters() {
+ Source source = addSource(r'''
+class A<T, T> {
+}''');
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.DUPLICATE_DEFINITION]);
verify([source]);
}
@@ -1590,7 +1685,7 @@ class A {
class B extends A {
static int get x => 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.DUPLICATE_DEFINITION_INHERITANCE]);
verify([source]);
@@ -1604,7 +1699,7 @@ abstract class A {
class B extends A {
static int get x => 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.DUPLICATE_DEFINITION_INHERITANCE]);
verify([source]);
@@ -1618,7 +1713,7 @@ class A {
class B extends A {
static x() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.DUPLICATE_DEFINITION_INHERITANCE]);
verify([source]);
@@ -1632,7 +1727,7 @@ abstract class A {
abstract class B extends A {
static x() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.DUPLICATE_DEFINITION_INHERITANCE]);
verify([source]);
@@ -1646,7 +1741,7 @@ class A {
class B extends A {
static set x(value) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.DUPLICATE_DEFINITION_INHERITANCE]);
verify([source]);
@@ -1660,7 +1755,7 @@ abstract class A {
class B extends A {
static set x(value) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.DUPLICATE_DEFINITION_INHERITANCE]);
verify([source]);
@@ -1672,14 +1767,14 @@ f({a, b}) {}
main() {
f(a: 1, a: 2);
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.DUPLICATE_NAMED_ARGUMENT]);
verify([source]);
}
void test_exportInternalLibrary() {
Source source = addSource("export 'dart:_interceptors';");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.EXPORT_INTERNAL_LIBRARY]);
verify([source]);
}
@@ -1689,7 +1784,7 @@ main() {
library L;
export 'lib1.dart';''');
addNamedSource("/lib1.dart", "part of lib;");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.EXPORT_OF_NON_LIBRARY]);
verify([source]);
}
@@ -1721,7 +1816,7 @@ class C = a.A with M;'''
void test_extendsDisallowedClass_class_bool() {
Source source = addSource("class A extends bool {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.EXTENDS_DISALLOWED_CLASS,
CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_IMPLICIT
@@ -1731,7 +1826,7 @@ class C = a.A with M;'''
void test_extendsDisallowedClass_class_double() {
Source source = addSource("class A extends double {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.EXTENDS_DISALLOWED_CLASS,
CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_IMPLICIT
@@ -1741,7 +1836,7 @@ class C = a.A with M;'''
void test_extendsDisallowedClass_class_int() {
Source source = addSource("class A extends int {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.EXTENDS_DISALLOWED_CLASS,
CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_IMPLICIT
@@ -1751,7 +1846,7 @@ class C = a.A with M;'''
void test_extendsDisallowedClass_class_Null() {
Source source = addSource("class A extends Null {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.EXTENDS_DISALLOWED_CLASS,
CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_IMPLICIT
@@ -1761,7 +1856,7 @@ class C = a.A with M;'''
void test_extendsDisallowedClass_class_num() {
Source source = addSource("class A extends num {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.EXTENDS_DISALLOWED_CLASS,
CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_IMPLICIT
@@ -1771,7 +1866,7 @@ class C = a.A with M;'''
void test_extendsDisallowedClass_class_String() {
Source source = addSource("class A extends String {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.EXTENDS_DISALLOWED_CLASS,
CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_IMPLICIT
@@ -1783,7 +1878,7 @@ class C = a.A with M;'''
Source source = addSource(r'''
class M {}
class C = bool with M;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.EXTENDS_DISALLOWED_CLASS,
CompileTimeErrorCode.MIXIN_HAS_NO_CONSTRUCTORS
@@ -1795,7 +1890,7 @@ class C = bool with M;''');
Source source = addSource(r'''
class M {}
class C = double with M;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.EXTENDS_DISALLOWED_CLASS]);
verify([source]);
}
@@ -1804,7 +1899,7 @@ class C = double with M;''');
Source source = addSource(r'''
class M {}
class C = int with M;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.EXTENDS_DISALLOWED_CLASS,
CompileTimeErrorCode.MIXIN_HAS_NO_CONSTRUCTORS
@@ -1816,7 +1911,7 @@ class C = int with M;''');
Source source = addSource(r'''
class M {}
class C = Null with M;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.EXTENDS_DISALLOWED_CLASS]);
verify([source]);
}
@@ -1825,7 +1920,7 @@ class C = Null with M;''');
Source source = addSource(r'''
class M {}
class C = num with M;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.EXTENDS_DISALLOWED_CLASS]);
verify([source]);
}
@@ -1834,7 +1929,7 @@ class C = num with M;''');
Source source = addSource(r'''
class M {}
class C = String with M;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.EXTENDS_DISALLOWED_CLASS,
CompileTimeErrorCode.MIXIN_HAS_NO_CONSTRUCTORS
@@ -1846,7 +1941,7 @@ class C = String with M;''');
Source source = addSource(r'''
enum E { ONE }
class A extends E {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.EXTENDS_ENUM]);
verify([source]);
}
@@ -1855,14 +1950,14 @@ class A extends E {}''');
Source source = addSource(r'''
int A;
class B extends A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.EXTENDS_NON_CLASS]);
verify([source]);
}
void test_extendsNonClass_dynamic() {
Source source = addSource("class B extends dynamic {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.EXTENDS_NON_CLASS]);
verify([source]);
}
@@ -1875,7 +1970,7 @@ class A {
main() {
const A(0);
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.EXTRA_POSITIONAL_ARGUMENTS]);
verify([source]);
}
@@ -1888,7 +1983,7 @@ class A {
class B extends A {
const B() : super(0);
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.EXTRA_POSITIONAL_ARGUMENTS]);
verify([source]);
}
@@ -1899,7 +1994,7 @@ class A {
int x;
A() : x = 0, x = 1 {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.FIELD_INITIALIZED_BY_MULTIPLE_INITIALIZERS]);
verify([source]);
@@ -1911,7 +2006,7 @@ class A {
int x;
A() : x = 0, x = 1, x = 2 {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.FIELD_INITIALIZED_BY_MULTIPLE_INITIALIZERS,
CompileTimeErrorCode.FIELD_INITIALIZED_BY_MULTIPLE_INITIALIZERS
@@ -1926,7 +2021,7 @@ class A {
int y;
A() : x = 0, x = 1, y = 0, y = 1 {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.FIELD_INITIALIZED_BY_MULTIPLE_INITIALIZERS,
CompileTimeErrorCode.FIELD_INITIALIZED_BY_MULTIPLE_INITIALIZERS
@@ -1940,7 +2035,7 @@ class A {
int x;
A(this.x) : x = 1 {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.FIELD_INITIALIZED_IN_PARAMETER_AND_INITIALIZER]);
verify([source]);
@@ -1952,7 +2047,7 @@ class A {
int x;
factory A(this.x) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.FIELD_INITIALIZER_FACTORY_CONSTRUCTOR]);
verify([source]);
@@ -1965,7 +2060,7 @@ class A {
int x;
m(this.x) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
ParserErrorCode.FIELD_INITIALIZER_OUTSIDE_CONSTRUCTOR,
CompileTimeErrorCode.FIELD_INITIALIZER_OUTSIDE_CONSTRUCTOR
@@ -1979,7 +2074,7 @@ class A {
int x;
m([this.x]) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.FIELD_INITIALIZER_OUTSIDE_CONSTRUCTOR]);
verify([source]);
@@ -1992,7 +2087,7 @@ class A {
A.named() {}
A() : this.named(), x = 42;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.FIELD_INITIALIZER_REDIRECTING_CONSTRUCTOR]);
verify([source]);
@@ -2005,7 +2100,7 @@ class A {
A.named() {}
A() : x = 42, this.named();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.FIELD_INITIALIZER_REDIRECTING_CONSTRUCTOR]);
verify([source]);
@@ -2018,7 +2113,7 @@ class A {
A.named() {}
A(this.x) : this.named();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.FIELD_INITIALIZER_REDIRECTING_CONSTRUCTOR]);
verify([source]);
@@ -2030,7 +2125,7 @@ class A {
final x;
A() : x = 0, x = 0 {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.FIELD_INITIALIZED_BY_MULTIPLE_INITIALIZERS]);
verify([source]);
@@ -2050,7 +2145,7 @@ class A {
final x;
A(this.x) : x = 0 {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.FIELD_INITIALIZED_IN_PARAMETER_AND_INITIALIZER]);
verify([source]);
@@ -2062,7 +2157,7 @@ class A {
final x;
A(this.x, this.x) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.FINAL_INITIALIZED_MULTIPLE_TIMES]);
verify([source]);
@@ -2073,14 +2168,14 @@ class A {
class A {
static const F;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONST_NOT_INITIALIZED]);
verify([source]);
}
void test_finalNotInitialized_library_const() {
Source source = addSource("const F;");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONST_NOT_INITIALIZED]);
verify([source]);
}
@@ -2090,7 +2185,7 @@ class A {
f() {
const int x;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.CONST_NOT_INITIALIZED]);
verify([source]);
}
@@ -2099,7 +2194,7 @@ f() {
Source source = addSource(r'''
var b1 = const bool.fromEnvironment(1);
var b2 = const bool.fromEnvironment('x', defaultValue: 1);''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_EVAL_THROWS_EXCEPTION,
StaticWarningCode.ARGUMENT_TYPE_NOT_ASSIGNABLE,
@@ -2115,7 +2210,7 @@ var b2 = const bool.fromEnvironment('x', defaultValue: 1);''');
analysisContext2.declaredVariables.define("x", "true");
Source source =
addSource("var b = const bool.fromEnvironment('x', defaultValue: 1);");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_EVAL_THROWS_EXCEPTION,
StaticWarningCode.ARGUMENT_TYPE_NOT_ASSIGNABLE
@@ -2129,7 +2224,7 @@ class A {
x(y) {}
get x => 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.GETTER_AND_METHOD_WITH_SAME_NAME]);
verify([source]);
@@ -2163,49 +2258,49 @@ class C = B with M implements a.A;'''
void test_implementsDisallowedClass_class_bool() {
Source source = addSource("class A implements bool {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS]);
verify([source]);
}
void test_implementsDisallowedClass_class_double() {
Source source = addSource("class A implements double {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS]);
verify([source]);
}
void test_implementsDisallowedClass_class_int() {
Source source = addSource("class A implements int {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS]);
verify([source]);
}
void test_implementsDisallowedClass_class_Null() {
Source source = addSource("class A implements Null {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS]);
verify([source]);
}
void test_implementsDisallowedClass_class_num() {
Source source = addSource("class A implements num {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS]);
verify([source]);
}
void test_implementsDisallowedClass_class_String() {
Source source = addSource("class A implements String {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS]);
verify([source]);
}
void test_implementsDisallowedClass_class_String_num() {
Source source = addSource("class A implements String, num {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS,
CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS
@@ -2218,7 +2313,7 @@ class C = B with M implements a.A;'''
class A {}
class M {}
class C = A with M implements bool;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS]);
verify([source]);
}
@@ -2228,7 +2323,7 @@ class C = A with M implements bool;''');
class A {}
class M {}
class C = A with M implements double;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS]);
verify([source]);
}
@@ -2238,7 +2333,7 @@ class C = A with M implements double;''');
class A {}
class M {}
class C = A with M implements int;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS]);
verify([source]);
}
@@ -2248,7 +2343,7 @@ class C = A with M implements int;''');
class A {}
class M {}
class C = A with M implements Null;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS]);
verify([source]);
}
@@ -2258,7 +2353,7 @@ class C = A with M implements Null;''');
class A {}
class M {}
class C = A with M implements num;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS]);
verify([source]);
}
@@ -2268,7 +2363,7 @@ class C = A with M implements num;''');
class A {}
class M {}
class C = A with M implements String;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS]);
verify([source]);
}
@@ -2278,7 +2373,7 @@ class C = A with M implements String;''');
class A {}
class M {}
class C = A with M implements String, num;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS,
CompileTimeErrorCode.IMPLEMENTS_DISALLOWED_CLASS
@@ -2288,7 +2383,7 @@ class C = A with M implements String, num;''');
void test_implementsDynamic() {
Source source = addSource("class A implements dynamic {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_DYNAMIC]);
verify([source]);
}
@@ -2297,7 +2392,7 @@ class C = A with M implements String, num;''');
Source source = addSource(r'''
enum E { ONE }
class A implements E {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_ENUM]);
verify([source]);
}
@@ -2306,7 +2401,7 @@ class A implements E {}''');
Source source = addSource(r'''
int A;
class B implements A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_NON_CLASS]);
verify([source]);
}
@@ -2317,7 +2412,7 @@ class A {}
class M {}
int B;
class C = A with M implements B;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_NON_CLASS]);
verify([source]);
}
@@ -2326,7 +2421,7 @@ class C = A with M implements B;''');
Source source = addSource(r'''
class A {}
class B implements A, A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_REPEATED]);
verify([source]);
}
@@ -2335,7 +2430,7 @@ class B implements A, A {}''');
Source source = addSource(r'''
class A {} class C{}
class B implements A, A, A, A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.IMPLEMENTS_REPEATED,
CompileTimeErrorCode.IMPLEMENTS_REPEATED,
@@ -2348,14 +2443,14 @@ class B implements A, A, A, A {}''');
Source source = addSource(r'''
class A {}
class B extends A implements A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_SUPER_CLASS]);
verify([source]);
}
void test_implementsSuperClass_Object() {
Source source = addSource("class A implements Object {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPLEMENTS_SUPER_CLASS]);
verify([source]);
}
@@ -2367,7 +2462,7 @@ class A {
A() : v = f;
var f;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.IMPLICIT_THIS_REFERENCE_IN_INITIALIZER]);
verify([source]);
@@ -2379,7 +2474,7 @@ class A {
final x = 0;
final y = x;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.IMPLICIT_THIS_REFERENCE_IN_INITIALIZER]);
verify([source]);
@@ -2392,7 +2487,7 @@ class A {
A() : v = f();
f() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.IMPLICIT_THIS_REFERENCE_IN_INITIALIZER]);
verify([source]);
@@ -2404,7 +2499,7 @@ class A {
static var F = m();
m() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.IMPLICIT_THIS_REFERENCE_IN_INITIALIZER]);
verify([source]);
@@ -2417,7 +2512,7 @@ class A {
A.named() : this(f);
var f;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.IMPLICIT_THIS_REFERENCE_IN_INITIALIZER]);
verify([source]);
@@ -2432,7 +2527,7 @@ class B extends A {
B() : super(f);
var f;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.IMPLICIT_THIS_REFERENCE_IN_INITIALIZER]);
verify([source]);
@@ -2440,7 +2535,7 @@ class B extends A {
void test_importInternalLibrary() {
Source source = addSource("import 'dart:_interceptors';");
- resolve(source);
+ computeLibrarySourceErrors(source);
// Note, in these error cases we may generate an UNUSED_IMPORT hint, while
// we could prevent the hint from being generated by testing the import
// directive for the error, this is such a minor corner case that we don't
@@ -2455,7 +2550,7 @@ class B extends A {
void test_importInternalLibrary_js_helper() {
Source source = addSource("import 'dart:_js_helper';");
- resolve(source);
+ computeLibrarySourceErrors(source);
// Note, in these error cases we may generate an UNUSED_IMPORT hint, while
// we could prevent the hint from being generated by testing the import
// directive for the error, this is such a minor corner case that we don't
@@ -2476,7 +2571,7 @@ A a;''');
addNamedSource("/part.dart", r'''
part of lib;
class A{}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.IMPORT_OF_NON_LIBRARY]);
verify([source]);
}
@@ -2491,7 +2586,7 @@ f(var p) {
break;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INCONSISTENT_CASE_EXPRESSION_TYPES]);
verify([source]);
@@ -2517,7 +2612,7 @@ foo(var p) {
break;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.INCONSISTENT_CASE_EXPRESSION_TYPES,
CompileTimeErrorCode.INCONSISTENT_CASE_EXPRESSION_TYPES
@@ -2537,7 +2632,7 @@ f(var p) {
break;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.INCONSISTENT_CASE_EXPRESSION_TYPES,
CompileTimeErrorCode.INCONSISTENT_CASE_EXPRESSION_TYPES
@@ -2553,7 +2648,7 @@ class A {
const A() : x = 'foo';
}
A a = const A();''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INITIALIZER_FOR_NON_EXISTENT_FIELD]);
}
@@ -2563,7 +2658,7 @@ A a = const A();''');
class A {
A() : x = 0 {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INITIALIZER_FOR_NON_EXISTENT_FIELD]);
}
@@ -2574,7 +2669,7 @@ class A {
static int x;
A() : x = 0 {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INITIALIZER_FOR_STATIC_FIELD]);
verify([source]);
}
@@ -2584,7 +2679,7 @@ class A {
class A {
A(this.x) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.INITIALIZING_FORMAL_FOR_NON_EXISTENT_FIELD]);
verify([source]);
@@ -2598,7 +2693,7 @@ int x;
class B extends A {
B(this.x) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.INITIALIZING_FORMAL_FOR_NON_EXISTENT_FIELD]);
verify([source]);
@@ -2609,7 +2704,7 @@ class B extends A {
class A {
A([this.x]) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.INITIALIZING_FORMAL_FOR_NON_EXISTENT_FIELD]);
verify([source]);
@@ -2621,7 +2716,7 @@ class A {
int get x => 1;
A(this.x) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.INITIALIZING_FORMAL_FOR_NON_EXISTENT_FIELD]);
verify([source]);
@@ -2633,7 +2728,7 @@ class A {
static int x;
A([this.x]) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INITIALIZING_FORMAL_FOR_STATIC_FIELD]);
verify([source]);
@@ -2649,7 +2744,7 @@ class A {
return new A();
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INSTANCE_MEMBER_ACCESS_FROM_FACTORY]);
verify([source]);
@@ -2665,7 +2760,7 @@ class A {
return new A._();
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INSTANCE_MEMBER_ACCESS_FROM_FACTORY]);
verify([source]);
@@ -2679,7 +2774,7 @@ class A {
f;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INSTANCE_MEMBER_ACCESS_FROM_STATIC]);
verify([source]);
@@ -2693,7 +2788,7 @@ class A {
g;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INSTANCE_MEMBER_ACCESS_FROM_STATIC]);
verify([source]);
@@ -2707,7 +2802,7 @@ class A {
m();
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INSTANCE_MEMBER_ACCESS_FROM_STATIC]);
verify([source]);
@@ -2719,7 +2814,7 @@ enum E { ONE }
E e(String name) {
return const E();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INSTANTIATE_ENUM]);
verify([source]);
}
@@ -2730,7 +2825,7 @@ enum E { ONE }
E e(String name) {
return new E();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INSTANTIATE_ENUM]);
verify([source]);
}
@@ -2741,7 +2836,7 @@ get V => 0;
@V
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_ANNOTATION]);
verify([source]);
}
@@ -2755,7 +2850,7 @@ import 'lib.dart' as p;
@p.V
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_ANNOTATION]);
verify([source]);
}
@@ -2769,7 +2864,7 @@ import 'lib.dart' as p;
@p.V
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_ANNOTATION]);
verify([source]);
}
@@ -2783,7 +2878,7 @@ import 'lib.dart' as p;
@p.V
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_ANNOTATION]);
verify([source]);
}
@@ -2794,7 +2889,7 @@ final V = 0;
@V
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_ANNOTATION]);
verify([source]);
}
@@ -2805,7 +2900,7 @@ typedef V();
@V
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_ANNOTATION]);
verify([source]);
}
@@ -2818,7 +2913,7 @@ class A {
@A.f
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_ANNOTATION]);
verify([source]);
}
@@ -2828,7 +2923,7 @@ main() {
@unresolved
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_ANNOTATION]);
}
@@ -2837,7 +2932,7 @@ main() {
@Unresolved()
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_ANNOTATION]);
}
@@ -2847,7 +2942,7 @@ import 'dart:math' as p;
@p.unresolved
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_ANNOTATION]);
}
@@ -2857,7 +2952,7 @@ main() {
class A {
static const foo = null;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_ANNOTATION]);
}
@@ -2913,7 +3008,7 @@ class A {
B() : super();
}
class B {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_CONSTRUCTOR_NAME]);
// no verify() call, "B" is not resolved
}
@@ -2923,7 +3018,7 @@ class B {}''');
class A {
B() : super();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_CONSTRUCTOR_NAME]);
// no verify() call, "B" is not resolved
}
@@ -2934,7 +3029,7 @@ int B;
class A {
factory B() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INVALID_FACTORY_NAME_NOT_A_CLASS]);
verify([source]);
@@ -2945,7 +3040,7 @@ class A {
class A {
factory B() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INVALID_FACTORY_NAME_NOT_A_CLASS]);
// no verify() call, "B" is not resolved
@@ -2956,7 +3051,7 @@ class A {
class A {
A() async {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INVALID_MODIFIER_ON_CONSTRUCTOR]);
verify([source]);
@@ -2967,7 +3062,7 @@ class A {
class A {
A() async* {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INVALID_MODIFIER_ON_CONSTRUCTOR]);
verify([source]);
@@ -2978,7 +3073,7 @@ class A {
class A {
A() sync* {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INVALID_MODIFIER_ON_CONSTRUCTOR]);
verify([source]);
@@ -2989,7 +3084,7 @@ class A {
class A {
set x(v) async {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_MODIFIER_ON_SETTER]);
verify([source]);
}
@@ -2999,7 +3094,7 @@ class A {
class A {
set x(v) async* {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_MODIFIER_ON_SETTER]);
verify([source]);
}
@@ -3009,28 +3104,28 @@ class A {
class A {
set x(v) sync* {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_MODIFIER_ON_SETTER]);
verify([source]);
}
void test_invalidModifierOnSetter_topLevel_async() {
Source source = addSource("set x(v) async {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_MODIFIER_ON_SETTER]);
verify([source]);
}
void test_invalidModifierOnSetter_topLevel_asyncStar() {
Source source = addSource("set x(v) async* {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_MODIFIER_ON_SETTER]);
verify([source]);
}
void test_invalidModifierOnSetter_topLevel_syncStar() {
Source source = addSource("set x(v) sync* {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_MODIFIER_ON_SETTER]);
verify([source]);
}
@@ -3040,7 +3135,7 @@ class A {
class A {
factory A() { return this; }
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_REFERENCE_TO_THIS]);
verify([source]);
}
@@ -3051,7 +3146,7 @@ class A {
var f;
A() : f = this;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_REFERENCE_TO_THIS]);
verify([source]);
}
@@ -3061,7 +3156,7 @@ class A {
class A {
var f = this;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_REFERENCE_TO_THIS]);
verify([source]);
}
@@ -3071,7 +3166,7 @@ class A {
class A {
static m() { return this; }
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_REFERENCE_TO_THIS]);
verify([source]);
}
@@ -3081,7 +3176,7 @@ class A {
class A {
static A f = this;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_REFERENCE_TO_THIS]);
verify([source]);
}
@@ -3094,21 +3189,21 @@ class A {
class B extends A {
B() : super(this);
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_REFERENCE_TO_THIS]);
verify([source]);
}
void test_invalidReferenceToThis_topLevelFunction() {
Source source = addSource("f() { return this; }");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_REFERENCE_TO_THIS]);
verify([source]);
}
void test_invalidReferenceToThis_variableInitializer() {
Source source = addSource("int x = this;");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_REFERENCE_TO_THIS]);
verify([source]);
}
@@ -3120,7 +3215,7 @@ class A<E> {
return const <E>[];
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INVALID_TYPE_ARGUMENT_IN_CONST_LIST]);
verify([source]);
@@ -3133,7 +3228,7 @@ class A<E> {
return const <String, E>{};
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.INVALID_TYPE_ARGUMENT_IN_CONST_MAP]);
verify([source]);
@@ -3141,19 +3236,19 @@ class A<E> {
void test_invalidUri_export() {
Source source = addSource("export 'ht:';");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_URI]);
}
void test_invalidUri_import() {
Source source = addSource("import 'ht:';");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_URI]);
}
void test_invalidUri_part() {
Source source = addSource("part 'ht:';");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.INVALID_URI]);
}
@@ -3168,7 +3263,7 @@ class Foo<T extends num> {
const x = const Foo<int>(const Foo<int>(0, 1),
const <Foo<String>>[]); // (1)
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.TYPE_ARGUMENT_NOT_MATCHING_BOUNDS]);
verify([source]);
@@ -3190,7 +3285,7 @@ class Foo {
_foo() {
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.IMPLICIT_THIS_REFERENCE_IN_INITIALIZER]);
verify([source]);
@@ -3207,7 +3302,7 @@ class A {
}
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.LABEL_IN_OUTER_SCOPE]);
// We cannot verify resolution with unresolvable labels
}
@@ -3219,7 +3314,7 @@ f() {
break y;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.LABEL_UNDEFINED]);
// We cannot verify resolution with undefined labels
}
@@ -3231,7 +3326,7 @@ f() {
continue y;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.LABEL_UNDEFINED]);
// We cannot verify resolution with undefined labels
}
@@ -3240,7 +3335,7 @@ f() {
// Attempting to compute the length of constant that couldn't be evaluated
// (due to an error) should not crash the analyzer (see dartbug.com/23383)
Source source = addSource("const int i = (1 ? 'alpha' : 'beta').length;");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_INITIALIZED_WITH_NON_CONSTANT_VALUE,
CompileTimeErrorCode.CONST_EVAL_TYPE_BOOL,
@@ -3254,7 +3349,7 @@ f() {
class A {
int A = 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MEMBER_WITH_CLASS_NAME]);
verify([source]);
}
@@ -3264,7 +3359,7 @@ class A {
class A {
int z, A, b = 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MEMBER_WITH_CLASS_NAME]);
verify([source]);
}
@@ -3274,7 +3369,7 @@ class A {
class A {
get A => 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MEMBER_WITH_CLASS_NAME]);
verify([source]);
}
@@ -3289,7 +3384,7 @@ class A {
get x => 0;
x(y) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.METHOD_AND_GETTER_WITH_SAME_NAME]);
verify([source]);
@@ -3305,7 +3400,7 @@ bool odd(E e) {
}
return false;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.MISSING_ENUM_CONSTANT_IN_SWITCH,
CompileTimeErrorCode.MISSING_ENUM_CONSTANT_IN_SWITCH
@@ -3319,7 +3414,7 @@ class A {
A() {}
}
class B extends Object with A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_DECLARES_CONSTRUCTOR]);
verify([source]);
}
@@ -3330,7 +3425,7 @@ class A {
A() {}
}
class B = Object with A;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_DECLARES_CONSTRUCTOR]);
verify([source]);
}
@@ -3368,7 +3463,7 @@ class B {
class M {}
class C = B with M;
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_HAS_NO_CONSTRUCTORS]);
verify([source]);
}
@@ -3385,7 +3480,7 @@ class C extends B with M {}
// generate a further error (despite the fact that it's not forwarded),
// since CompileTimeErrorCode.MIXIN_HAS_NO_CONSTRUCTORS does a better job
// of explaining the probem to the user.
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_HAS_NO_CONSTRUCTORS]);
verify([source]);
}
@@ -3404,7 +3499,7 @@ class C extends B with M {
// error (despite the fact that it's not forwarded), since
// CompileTimeErrorCode.MIXIN_HAS_NO_CONSTRUCTORS does a better job of
// explaining the error to the user.
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_HAS_NO_CONSTRUCTORS]);
verify([source]);
}
@@ -3423,7 +3518,7 @@ class C extends B with M {
// error (despite the fact that it's not forwarded), since
// CompileTimeErrorCode.MIXIN_HAS_NO_CONSTRUCTORS does a better job of
// explaining the error to the user.
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_HAS_NO_CONSTRUCTORS]);
verify([source]);
}
@@ -3442,7 +3537,7 @@ class C extends B with M {
// further error (despite the fact that it's not forwarded), since
// CompileTimeErrorCode.MIXIN_HAS_NO_CONSTRUCTORS does a better job of
// explaining the error to the user.
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_HAS_NO_CONSTRUCTORS]);
verify([source]);
}
@@ -3452,7 +3547,7 @@ class C extends B with M {
class A {}
class B extends A {}
class C extends Object with B {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_INHERITS_FROM_NOT_OBJECT]);
verify([source]);
}
@@ -3462,7 +3557,7 @@ class C extends Object with B {}''');
class A {}
class B extends Object with A {}
class C extends Object with B {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_INHERITS_FROM_NOT_OBJECT]);
verify([source]);
}
@@ -3472,7 +3567,7 @@ class C extends Object with B {}''');
class A {}
class B extends A {}
class C = Object with B;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_INHERITS_FROM_NOT_OBJECT]);
verify([source]);
}
@@ -3482,49 +3577,49 @@ class C = Object with B;''');
class A {}
class B extends Object with A {}
class C = Object with B;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_INHERITS_FROM_NOT_OBJECT]);
verify([source]);
}
void test_mixinOfDisallowedClass_class_bool() {
Source source = addSource("class A extends Object with bool {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS]);
verify([source]);
}
void test_mixinOfDisallowedClass_class_double() {
Source source = addSource("class A extends Object with double {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS]);
verify([source]);
}
void test_mixinOfDisallowedClass_class_int() {
Source source = addSource("class A extends Object with int {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS]);
verify([source]);
}
void test_mixinOfDisallowedClass_class_Null() {
Source source = addSource("class A extends Object with Null {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS]);
verify([source]);
}
void test_mixinOfDisallowedClass_class_num() {
Source source = addSource("class A extends Object with num {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS]);
verify([source]);
}
void test_mixinOfDisallowedClass_class_String() {
Source source = addSource("class A extends Object with String {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS]);
verify([source]);
}
@@ -3533,7 +3628,7 @@ class C = Object with B;''');
Source source = addSource(r'''
class A {}
class C = A with bool;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS]);
verify([source]);
}
@@ -3542,7 +3637,7 @@ class C = A with bool;''');
Source source = addSource(r'''
class A {}
class C = A with double;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS]);
verify([source]);
}
@@ -3551,7 +3646,7 @@ class C = A with double;''');
Source source = addSource(r'''
class A {}
class C = A with int;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS]);
verify([source]);
}
@@ -3560,7 +3655,7 @@ class C = A with int;''');
Source source = addSource(r'''
class A {}
class C = A with Null;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS]);
verify([source]);
}
@@ -3569,7 +3664,7 @@ class C = A with Null;''');
Source source = addSource(r'''
class A {}
class C = A with num;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS]);
verify([source]);
}
@@ -3578,7 +3673,7 @@ class C = A with num;''');
Source source = addSource(r'''
class A {}
class C = A with String;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS]);
verify([source]);
}
@@ -3587,7 +3682,7 @@ class C = A with String;''');
Source source = addSource(r'''
class A {}
class C = A with String, num;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS,
CompileTimeErrorCode.MIXIN_OF_DISALLOWED_CLASS
@@ -3599,7 +3694,7 @@ class C = A with String, num;''');
Source source = addSource(r'''
enum E { ONE }
class A extends Object with E {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_ENUM]);
verify([source]);
}
@@ -3608,7 +3703,7 @@ class A extends Object with E {}''');
Source source = addSource(r'''
int A;
class B extends Object with A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_NON_CLASS]);
verify([source]);
}
@@ -3618,7 +3713,7 @@ class B extends Object with A {}''');
class A {}
int B;
class C = A with B;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_OF_NON_CLASS]);
verify([source]);
}
@@ -3629,7 +3724,7 @@ class A {
toString() => super.toString();
}
class B extends Object with A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MIXIN_REFERENCES_SUPER]);
verify([source]);
}
@@ -3639,7 +3734,7 @@ class B extends Object with A {}''');
int A;
class B {}
class C extends A with B {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.MIXIN_WITH_NON_CLASS_SUPERCLASS]);
verify([source]);
@@ -3650,7 +3745,7 @@ class C extends A with B {}''');
int A;
class B {}
class C = A with B;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.MIXIN_WITH_NON_CLASS_SUPERCLASS]);
verify([source]);
@@ -3663,7 +3758,7 @@ class A {
A.a() {}
A.b() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.MULTIPLE_REDIRECTING_CONSTRUCTOR_INVOCATIONS]);
verify([source]);
@@ -3675,7 +3770,7 @@ class A {}
class B extends A {
B() : super(), super() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.MULTIPLE_SUPER_INITIALIZERS]);
verify([source]);
}
@@ -3685,7 +3780,7 @@ class B extends A {
// error code is generated through the ErrorVerifier, it is not a
// CompileTimeErrorCode.
Source source = addSource("class A native 'string' {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.NATIVE_CLAUSE_IN_NON_SDK_CODE]);
verify([source]);
}
@@ -3695,7 +3790,7 @@ class B extends A {
// error code is generated through the ErrorVerifier, it is not a
// CompileTimeErrorCode.
Source source = addSource("int m(a) native 'string';");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [ParserErrorCode.NATIVE_FUNCTION_BODY_IN_NON_SDK_CODE]);
verify([source]);
@@ -3709,7 +3804,7 @@ class B extends A {
class A{
static int m(a) native 'string';
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [ParserErrorCode.NATIVE_FUNCTION_BODY_IN_NON_SDK_CODE]);
verify([source]);
@@ -3723,7 +3818,7 @@ class A {
@A
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NO_ANNOTATION_CONSTRUCTOR_ARGUMENTS]);
verify([source]);
@@ -3737,7 +3832,7 @@ class A {
class B extends A {
B() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_EXPLICIT]);
verify([source]);
@@ -3755,7 +3850,7 @@ class C extends Mixed {
C(x) : super();
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.UNDEFINED_CONSTRUCTOR_IN_INITIALIZER_DEFAULT]);
verify([source]);
@@ -3773,7 +3868,7 @@ class C extends Mixed {
C();
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.UNDEFINED_CONSTRUCTOR_IN_INITIALIZER_DEFAULT]);
verify([source]);
@@ -3791,7 +3886,7 @@ class C extends Mixed {
C(x) : super.named();
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.UNDEFINED_CONSTRUCTOR_IN_INITIALIZER]);
// Don't verify since call to super.named() can't be resolved.
@@ -3809,7 +3904,7 @@ class C extends Mixed {
C();
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.UNDEFINED_CONSTRUCTOR_IN_INITIALIZER_DEFAULT]);
verify([source]);
@@ -3826,7 +3921,7 @@ class C extends B with M {
C(x) : super();
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.UNDEFINED_CONSTRUCTOR_IN_INITIALIZER_DEFAULT]);
verify([source]);
@@ -3843,7 +3938,7 @@ class C extends B with M {
C();
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_EXPLICIT]);
verify([source]);
@@ -3860,7 +3955,7 @@ class C extends B with M {
C(x) : super.named();
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.UNDEFINED_CONSTRUCTOR_IN_INITIALIZER]);
// Don't verify since call to super.named() can't be resolved.
@@ -3877,7 +3972,7 @@ class C extends B with M {
C();
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_EXPLICIT]);
verify([source]);
@@ -3893,7 +3988,7 @@ class B {
class Mixed = B with M;
class C extends Mixed {}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_IMPLICIT]);
verify([source]);
@@ -3909,7 +4004,7 @@ class B {
class Mixed = B with M;
class C extends Mixed {}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_IMPLICIT]);
verify([source]);
@@ -3924,7 +4019,7 @@ class B {
}
class C extends B with M {}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_IMPLICIT]);
verify([source]);
@@ -3939,7 +4034,7 @@ class B {
}
class C extends B with M {}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_IMPLICIT]);
verify([source]);
@@ -3952,7 +4047,7 @@ class A {
}
class B extends A {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_IMPLICIT]);
verify([source]);
@@ -3962,7 +4057,7 @@ class B extends A {
Source source = addSource(r'''
class A { A.named() {} }
class B extends A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NO_DEFAULT_SUPER_CONSTRUCTOR_IMPLICIT]);
verify([source]);
@@ -3976,7 +4071,7 @@ class A {
@A.fromInt()
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NON_CONSTANT_ANNOTATION_CONSTRUCTOR]);
verify([source]);
@@ -3990,7 +4085,7 @@ class A {
@A()
main() {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NON_CONSTANT_ANNOTATION_CONSTRUCTOR]);
verify([source]);
@@ -4000,7 +4095,7 @@ main() {
Source source = addSource(r'''
int y;
f({x : y}) {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NON_CONSTANT_DEFAULT_VALUE]);
verify([source]);
}
@@ -4009,7 +4104,7 @@ f({x : y}) {}''');
Source source = addSource(r'''
int y;
f([x = y]) {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NON_CONSTANT_DEFAULT_VALUE]);
verify([source]);
}
@@ -4020,7 +4115,7 @@ class A {
int y;
A({x : y}) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NON_CONSTANT_DEFAULT_VALUE]);
verify([source]);
}
@@ -4031,7 +4126,7 @@ class A {
int y;
A([x = y]) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NON_CONSTANT_DEFAULT_VALUE]);
verify([source]);
}
@@ -4042,7 +4137,7 @@ class A {
int y;
m({x : y}) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NON_CONSTANT_DEFAULT_VALUE]);
verify([source]);
}
@@ -4053,7 +4148,7 @@ class A {
int y;
m([x = y]) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NON_CONSTANT_DEFAULT_VALUE]);
verify([source]);
}
@@ -4094,7 +4189,7 @@ f(int p, int q) {
break;
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NON_CONSTANT_CASE_EXPRESSION]);
verify([source]);
}
@@ -4142,7 +4237,7 @@ main (int p) {
f(a) {
return const [a];
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NON_CONSTANT_LIST_ELEMENT]);
verify([source]);
}
@@ -4184,7 +4279,7 @@ f() {
f() {
{'a' : 0, 'b' : 1}.length;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NON_CONST_MAP_AS_EXPRESSION_STATEMENT]);
verify([source]);
@@ -4195,7 +4290,7 @@ f() {
f() {
{'a' : 0, 'b' : 1};
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NON_CONST_MAP_AS_EXPRESSION_STATEMENT]);
verify([source]);
@@ -4206,7 +4301,7 @@ f() {
f(a) {
return const {a : 0};
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NON_CONSTANT_MAP_KEY]);
verify([source]);
}
@@ -4248,7 +4343,7 @@ f() {
f(a) {
return const {'a' : a};
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NON_CONSTANT_MAP_VALUE]);
verify([source]);
}
@@ -4291,7 +4386,7 @@ class A {
final bool a;
const A(String p) : a = p && true;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_EVAL_TYPE_BOOL,
StaticTypeWarningCode.NON_BOOL_OPERAND
@@ -4305,7 +4400,7 @@ class A {
final bool a;
const A(String p) : a = true && p;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_EVAL_TYPE_BOOL,
StaticTypeWarningCode.NON_BOOL_OPERAND
@@ -4319,7 +4414,7 @@ class A {
final int a;
const A(String p) : a = 5 & p;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_EVAL_TYPE_INT,
StaticWarningCode.ARGUMENT_TYPE_NOT_ASSIGNABLE
@@ -4333,7 +4428,7 @@ class A {
final int a;
const A(String p) : a = 5 + p;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_EVAL_TYPE_NUM,
StaticWarningCode.ARGUMENT_TYPE_NOT_ASSIGNABLE
@@ -4348,7 +4443,7 @@ class A {
final int a;
const A() : a = C;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NON_CONSTANT_VALUE_IN_INITIALIZER]);
verify([source]);
@@ -4364,7 +4459,7 @@ class B {
final a;
}
var b = const B();''');
- resolve(source);
+ computeLibrarySourceErrors(source);
// TODO(paulberry): the error INVALID_CONSTAT is redundant and ought to be
// suppressed.
assertErrors(source, [
@@ -4381,7 +4476,7 @@ class A {
const A.named(p);
const A() : this.named(C);
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NON_CONSTANT_VALUE_IN_INITIALIZER]);
verify([source]);
@@ -4396,7 +4491,7 @@ class B extends A {
static var C;
const B() : super(C);
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.NON_CONSTANT_VALUE_IN_INITIALIZER]);
verify([source]);
@@ -4480,7 +4575,7 @@ class A {
class B extends A {
B() : super.named();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NON_GENERATIVE_CONSTRUCTOR]);
verify([source]);
}
@@ -4493,7 +4588,7 @@ class A {
class B extends A {
B();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NON_GENERATIVE_CONSTRUCTOR]);
verify([source]);
}
@@ -4505,7 +4600,7 @@ class A {
}
class B extends A {
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NON_GENERATIVE_CONSTRUCTOR]);
verify([source]);
}
@@ -4518,7 +4613,7 @@ class A {
main() {
const A();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NOT_ENOUGH_REQUIRED_ARGUMENTS]);
verify([source]);
}
@@ -4531,7 +4626,7 @@ class A {
class B extends A {
const B() : super();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.NOT_ENOUGH_REQUIRED_ARGUMENTS]);
verify([source]);
}
@@ -4541,7 +4636,7 @@ class B extends A {
class A {
operator +({p}) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.OPTIONAL_PARAMETER_IN_OPERATOR]);
verify([source]);
}
@@ -4551,7 +4646,7 @@ class A {
class A {
operator +([p]) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.OPTIONAL_PARAMETER_IN_OPERATOR]);
verify([source]);
}
@@ -4561,7 +4656,7 @@ class A {
library l1;
part 'l2.dart';''');
addNamedSource("/l2.dart", "library l2;");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.PART_OF_NON_PART]);
verify([source]);
}
@@ -4574,7 +4669,7 @@ class A{}''');
import 'lib.dart' as p;
typedef p();
p.A a;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.PREFIX_COLLIDES_WITH_TOP_LEVEL_MEMBER]);
verify([source]);
@@ -4588,7 +4683,7 @@ class A{}''');
import 'lib.dart' as p;
p() {}
p.A a;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.PREFIX_COLLIDES_WITH_TOP_LEVEL_MEMBER]);
verify([source]);
@@ -4602,7 +4697,7 @@ class A{}''');
import 'lib.dart' as p;
var p = null;
p.A a;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.PREFIX_COLLIDES_WITH_TOP_LEVEL_MEMBER]);
verify([source]);
@@ -4616,7 +4711,7 @@ class A{}''');
import 'lib.dart' as p;
class p {}
p.A a;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.PREFIX_COLLIDES_WITH_TOP_LEVEL_MEMBER]);
verify([source]);
@@ -4624,7 +4719,7 @@ p.A a;''');
void test_privateOptionalParameter() {
Source source = addSource("f({var _p}) {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.PRIVATE_OPTIONAL_PARAMETER]);
verify([source]);
}
@@ -4635,14 +4730,14 @@ class A {
var _p;
A({this._p: 0});
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.PRIVATE_OPTIONAL_PARAMETER]);
verify([source]);
}
void test_privateOptionalParameter_withDefaultValue() {
Source source = addSource("f({_p : 0}) {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.PRIVATE_OPTIONAL_PARAMETER]);
verify([source]);
}
@@ -4653,7 +4748,7 @@ class A {
const A();
final m = const A();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.RECURSIVE_COMPILE_TIME_CONSTANT]);
verify([source]);
@@ -4663,7 +4758,7 @@ class A {
Source source = addSource(r'''
const x = y + 1;
const y = x + 1;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_COMPILE_TIME_CONSTANT,
CompileTimeErrorCode.RECURSIVE_COMPILE_TIME_CONSTANT
@@ -4679,7 +4774,7 @@ class C {
final x;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.RECURSIVE_COMPILE_TIME_CONSTANT]);
verify([source]);
@@ -4689,7 +4784,7 @@ class C {
Source source = addSource(r'''
const x = x;
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.RECURSIVE_COMPILE_TIME_CONSTANT]);
verify([source]);
@@ -4701,7 +4796,7 @@ class A {
A.a() : this.b();
A.b() : this.a();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_CONSTRUCTOR_REDIRECT,
CompileTimeErrorCode.RECURSIVE_CONSTRUCTOR_REDIRECT
@@ -4714,7 +4809,7 @@ class A {
class A {
A() : this();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.RECURSIVE_CONSTRUCTOR_REDIRECT]);
verify([source]);
}
@@ -4730,7 +4825,7 @@ class B implements C {
class C implements A {
factory C() = B;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_FACTORY_REDIRECT,
CompileTimeErrorCode.RECURSIVE_FACTORY_REDIRECT,
@@ -4747,7 +4842,7 @@ class C implements A {
class A {
factory A() = A;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.RECURSIVE_FACTORY_REDIRECT]);
verify([source]);
}
@@ -4764,7 +4859,7 @@ main() {
const C<int>();
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.RECURSIVE_FACTORY_REDIRECT]);
verify([source]);
}
@@ -4780,7 +4875,7 @@ class B<T> implements C<T> {
class C<T> implements A<T> {
factory C() = B;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_FACTORY_REDIRECT,
CompileTimeErrorCode.RECURSIVE_FACTORY_REDIRECT,
@@ -4803,7 +4898,7 @@ class B implements C {
class C implements A {
factory C.nameC() = B.nameB;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_FACTORY_REDIRECT,
CompileTimeErrorCode.RECURSIVE_FACTORY_REDIRECT,
@@ -4830,7 +4925,7 @@ class B implements C {
class C implements A, B {
factory C() = B;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_FACTORY_REDIRECT,
CompileTimeErrorCode.RECURSIVE_FACTORY_REDIRECT,
@@ -4844,7 +4939,7 @@ class C implements A, B {
Source source = addSource(r'''
class A extends B {}
class B extends A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE,
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE
@@ -4856,7 +4951,7 @@ class B extends A {}''');
Source source = addSource(r'''
class A extends B {}
class B implements A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE,
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE
@@ -4868,7 +4963,7 @@ class B implements A {}''');
Source source = addSource(r'''
class A implements B {}
class B implements A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE,
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE
@@ -4880,7 +4975,7 @@ class B implements A {}''');
Source source = addSource(r'''
class M1 = Object with M2;
class M2 = Object with M1;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE,
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE
@@ -4892,7 +4987,7 @@ class M2 = Object with M1;''');
Source source = addSource(r'''
abstract class A implements A {}
class B implements A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE_BASE_CASE_IMPLEMENTS
]);
@@ -4904,7 +4999,7 @@ class B implements A {}''');
abstract class A implements B {}
abstract class B implements A {}
class C implements A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE,
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE
@@ -4918,7 +5013,7 @@ abstract class A implements B {}
abstract class B implements C {}
abstract class C implements A {}
class D implements A {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE,
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE,
@@ -4929,7 +5024,7 @@ class D implements A {}''');
void test_recursiveInterfaceInheritanceBaseCaseExtends() {
Source source = addSource("class A extends A {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE_BASE_CASE_EXTENDS
]);
@@ -4938,7 +5033,7 @@ class D implements A {}''');
void test_recursiveInterfaceInheritanceBaseCaseImplements() {
Source source = addSource("class A implements A {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE_BASE_CASE_IMPLEMENTS
]);
@@ -4950,7 +5045,7 @@ class D implements A {}''');
class A {}
class M {}
class B = A with M implements B;''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE_BASE_CASE_IMPLEMENTS
]);
@@ -4959,7 +5054,7 @@ class B = A with M implements B;''');
void test_recursiveInterfaceInheritanceBaseCaseWith() {
Source source = addSource("class M = Object with M;");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.RECURSIVE_INTERFACE_INHERITANCE_BASE_CASE_WITH]);
verify([source]);
@@ -4970,7 +5065,7 @@ class B = A with M implements B;''');
class A {
A() : this.noSuchConstructor();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.REDIRECT_GENERATIVE_TO_MISSING_CONSTRUCTOR]);
}
@@ -4981,7 +5076,7 @@ class A {
A() : this.x();
factory A.x() => null;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.REDIRECT_GENERATIVE_TO_NON_GENERATIVE_CONSTRUCTOR
]);
@@ -4996,7 +5091,7 @@ class A implements B{
class B {
const factory B() = A.name;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.REDIRECT_TO_MISSING_CONSTRUCTOR]);
}
@@ -5009,7 +5104,7 @@ class A implements B{
class B {
const factory B() = A;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.REDIRECT_TO_MISSING_CONSTRUCTOR]);
}
@@ -5020,7 +5115,7 @@ int A;
class B {
const factory B() = A;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.REDIRECT_TO_NON_CLASS]);
verify([source]);
}
@@ -5030,7 +5125,7 @@ class B {
class B {
const factory B() = A;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.REDIRECT_TO_NON_CLASS]);
verify([source]);
}
@@ -5041,7 +5136,7 @@ class A {
A.a() {}
const factory A.b() = A.a;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.REDIRECT_TO_NON_CONST_CONSTRUCTOR]);
verify([source]);
@@ -5055,7 +5150,7 @@ main() {
v() {}
}
print(x) {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.REFERENCED_BEFORE_DECLARATION]);
}
@@ -5067,7 +5162,7 @@ main() {
var v = 2;
}
print(x) {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.REFERENCED_BEFORE_DECLARATION]);
}
@@ -5081,7 +5176,7 @@ main() {
var v = 2;
}
print(x) {}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.REFERENCED_BEFORE_DECLARATION]);
}
@@ -5090,7 +5185,7 @@ print(x) {}''');
main() {
var v = () => v;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.REFERENCED_BEFORE_DECLARATION]);
}
@@ -5099,7 +5194,7 @@ main() {
main() {
var v = v;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.REFERENCED_BEFORE_DECLARATION]);
}
@@ -5108,7 +5203,7 @@ main() {
f() {
rethrow;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.RETHROW_OUTSIDE_CATCH]);
verify([source]);
}
@@ -5118,7 +5213,7 @@ f() {
class A {
A() { return 0; }
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.RETURN_IN_GENERATIVE_CONSTRUCTOR]);
verify([source]);
@@ -5129,7 +5224,7 @@ class A {
class A {
A() => null;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.RETURN_IN_GENERATIVE_CONSTRUCTOR]);
verify([source]);
@@ -5140,7 +5235,7 @@ class A {
f() async* {
return 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.RETURN_IN_GENERATOR]);
verify([source]);
}
@@ -5150,7 +5245,7 @@ f() async* {
f() sync* {
return 0;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.RETURN_IN_GENERATOR]);
verify([source]);
}
@@ -5173,7 +5268,7 @@ main() { lib.f1(); lib.f2(); }'''
void test_superInInvalidContext_binaryExpression() {
Source source = addSource("var v = super + 0;");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.SUPER_IN_INVALID_CONTEXT]);
// no verify(), 'super.v' is not resolved
}
@@ -5187,7 +5282,7 @@ class B extends A {
var f;
B() : f = super.m();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.SUPER_IN_INVALID_CONTEXT]);
// no verify(), 'super.m' is not resolved
}
@@ -5202,7 +5297,7 @@ class B extends A {
super.m();
}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.SUPER_IN_INVALID_CONTEXT]);
// no verify(), 'super.m' is not resolved
}
@@ -5215,7 +5310,7 @@ class A {
class B extends A {
var b = super.a;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.SUPER_IN_INVALID_CONTEXT]);
// no verify(), 'super.a' is not resolved
}
@@ -5228,7 +5323,7 @@ class A {
class B extends A {
static n() { return super.m(); }
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.SUPER_IN_INVALID_CONTEXT]);
// no verify(), 'super.m' is not resolved
}
@@ -5241,7 +5336,7 @@ class A {
class B extends A {
static int b = super.a;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.SUPER_IN_INVALID_CONTEXT]);
// no verify(), 'super.a' is not resolved
}
@@ -5251,14 +5346,14 @@ class B extends A {
f() {
super.f();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.SUPER_IN_INVALID_CONTEXT]);
// no verify(), 'super.f' is not resolved
}
void test_superInInvalidContext_topLevelVariableInitializer() {
Source source = addSource("var v = super.y;");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.SUPER_IN_INVALID_CONTEXT]);
// no verify(), 'super.y' is not resolved
}
@@ -5270,7 +5365,7 @@ class B {
B() : this.name(), super();
B.name() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.SUPER_IN_REDIRECTING_CONSTRUCTOR]);
verify([source]);
@@ -5283,7 +5378,7 @@ class B {
B() : super(), this.name();
B.name() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.SUPER_IN_REDIRECTING_CONSTRUCTOR]);
verify([source]);
@@ -5296,7 +5391,7 @@ var s2 = const Symbol(3);
var s3 = const Symbol();
var s4 = const Symbol('x', 'y');
var s5 = const Symbol('x', foo: 'x');''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_EVAL_THROWS_EXCEPTION,
CompileTimeErrorCode.CONST_EVAL_THROWS_EXCEPTION,
@@ -5315,7 +5410,7 @@ typedef void G(List<F> l);
main() {
F foo(G g) => g;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.TYPE_ALIAS_CANNOT_REFERENCE_ITSELF,
CompileTimeErrorCode.TYPE_ALIAS_CANNOT_REFERENCE_ITSELF
@@ -5334,14 +5429,14 @@ abstract class D {
abstract class E extends A<dynamic, F> {}
typedef D F();
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertNoErrors(source);
verify([source]);
}
void test_typeAliasCannotReferenceItself_parameterType_named() {
Source source = addSource("typedef A({A a});");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.TYPE_ALIAS_CANNOT_REFERENCE_ITSELF]);
verify([source]);
@@ -5349,7 +5444,7 @@ typedef D F();
void test_typeAliasCannotReferenceItself_parameterType_positional() {
Source source = addSource("typedef A([A a]);");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.TYPE_ALIAS_CANNOT_REFERENCE_ITSELF]);
verify([source]);
@@ -5357,7 +5452,7 @@ typedef D F();
void test_typeAliasCannotReferenceItself_parameterType_required() {
Source source = addSource("typedef A(A a);");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.TYPE_ALIAS_CANNOT_REFERENCE_ITSELF]);
verify([source]);
@@ -5365,7 +5460,7 @@ typedef D F();
void test_typeAliasCannotReferenceItself_parameterType_typeArgument() {
Source source = addSource("typedef A(List<A> a);");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.TYPE_ALIAS_CANNOT_REFERENCE_ITSELF]);
verify([source]);
@@ -5379,14 +5474,14 @@ typedef A B();
class C {
B a;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertNoErrors(source);
verify([source]);
}
void test_typeAliasCannotReferenceItself_returnType() {
Source source = addSource("typedef A A();");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.TYPE_ALIAS_CANNOT_REFERENCE_ITSELF]);
verify([source]);
@@ -5396,7 +5491,7 @@ class C {
Source source = addSource(r'''
typedef B A();
typedef A B();''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.TYPE_ALIAS_CANNOT_REFERENCE_ITSELF,
CompileTimeErrorCode.TYPE_ALIAS_CANNOT_REFERENCE_ITSELF
@@ -5406,7 +5501,7 @@ typedef A B();''');
void test_typeAliasCannotReferenceItself_typeVariableBounds() {
Source source = addSource("typedef A<T extends A>();");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.TYPE_ALIAS_CANNOT_REFERENCE_ITSELF]);
verify([source]);
@@ -5420,7 +5515,7 @@ class G<E extends A> {
const G();
}
f() { return const G<B>(); }''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.TYPE_ARGUMENT_NOT_MATCHING_BOUNDS]);
verify([source]);
@@ -5431,7 +5526,7 @@ f() { return const G<B>(); }''');
f() {
return const A();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.UNDEFINED_CLASS]);
verify([source]);
}
@@ -5442,7 +5537,7 @@ class A {}
class B extends A {
B() : super.named();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.UNDEFINED_CONSTRUCTOR_IN_INITIALIZER]);
// no verify(), "super.named()" is not resolved
@@ -5456,7 +5551,7 @@ class A {
class B extends A {
B() : super();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.UNDEFINED_CONSTRUCTOR_IN_INITIALIZER_DEFAULT]);
verify([source]);
@@ -5470,7 +5565,7 @@ class A {
class B extends A {
B();
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.UNDEFINED_CONSTRUCTOR_IN_INITIALIZER_DEFAULT]);
verify([source]);
@@ -5484,32 +5579,32 @@ class A {
main() {
const A(p: 0);
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.UNDEFINED_NAMED_PARAMETER]);
// no verify(), 'p' is not resolved
}
void test_uriDoesNotExist_export() {
Source source = addSource("export 'unknown.dart';");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.URI_DOES_NOT_EXIST]);
}
void test_uriDoesNotExist_import() {
Source source = addSource("import 'unknown.dart';");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.URI_DOES_NOT_EXIST]);
}
void test_uriDoesNotExist_part() {
Source source = addSource("part 'unknown.dart';");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.URI_DOES_NOT_EXIST]);
}
void test_uriWithInterpolation_constant() {
Source source = addSource("import 'stuff_\$platform.dart';");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.URI_WITH_INTERPOLATION,
StaticWarningCode.UNDEFINED_IDENTIFIER
@@ -5522,7 +5617,7 @@ main() {
Source source = addSource(r'''
library lib;
part '${'a'}.dart';''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [CompileTimeErrorCode.URI_WITH_INTERPOLATION]);
// We cannot verify resolution with an unresolvable URI: '${'a'}.dart'
}
@@ -5550,7 +5645,7 @@ part '${'a'}.dart';''');
class A {
operator -(a, b) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source,
[CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_OPERATOR_MINUS]);
verify([source]);
@@ -5564,7 +5659,7 @@ class A {
void test_wrongNumberOfParametersForSetter_function_named() {
Source source = addSource("set x({p}) {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_SETTER]);
verify([source]);
@@ -5572,7 +5667,7 @@ class A {
void test_wrongNumberOfParametersForSetter_function_optional() {
Source source = addSource("set x([p]) {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_SETTER]);
verify([source]);
@@ -5580,7 +5675,7 @@ class A {
void test_wrongNumberOfParametersForSetter_function_tooFew() {
Source source = addSource("set x() {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_SETTER]);
verify([source]);
@@ -5588,7 +5683,7 @@ class A {
void test_wrongNumberOfParametersForSetter_function_tooMany() {
Source source = addSource("set x(a, b) {}");
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_SETTER]);
verify([source]);
@@ -5599,7 +5694,7 @@ class A {
class A {
set x({p}) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_SETTER]);
verify([source]);
@@ -5610,7 +5705,7 @@ class A {
class A {
set x([p]) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_SETTER]);
verify([source]);
@@ -5621,7 +5716,7 @@ class A {
class A {
set x() {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_SETTER]);
verify([source]);
@@ -5632,7 +5727,7 @@ class A {
class A {
set x(a, b) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_SETTER]);
verify([source]);
@@ -5644,7 +5739,7 @@ f() async {
var yield = 1;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -5655,7 +5750,7 @@ f() async* {
var yield = 1;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
@@ -5666,14 +5761,14 @@ f() sync* {
var yield = 1;
}
''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [ParserErrorCode.ASYNC_KEYWORD_USED_AS_IDENTIFIER]);
verify([source]);
}
void _check_constEvalThrowsException_binary_null(String expr, bool resolved) {
Source source = addSource("const C = $expr;");
- resolve(source);
+ computeLibrarySourceErrors(source);
if (resolved) {
assertErrors(source, [CompileTimeErrorCode.CONST_EVAL_THROWS_EXCEPTION]);
verify([source]);
@@ -5690,7 +5785,7 @@ class A {
final a;
const A(bool p) : a = $expr;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_EVAL_TYPE_BOOL,
StaticTypeWarningCode.NON_BOOL_OPERAND
@@ -5705,7 +5800,7 @@ class A {
final a;
const A(int p) : a = $expr;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_EVAL_TYPE_INT,
StaticWarningCode.ARGUMENT_TYPE_NOT_ASSIGNABLE
@@ -5720,7 +5815,7 @@ class A {
final a;
const A(num p) : a = $expr;
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(source, [
CompileTimeErrorCode.CONST_EVAL_TYPE_NUM,
StaticWarningCode.ARGUMENT_TYPE_NOT_ASSIGNABLE
@@ -5735,7 +5830,7 @@ class A {
class A {
operator $name($parameters) {}
}''');
- resolve(source);
+ computeLibrarySourceErrors(source);
assertErrors(
source, [CompileTimeErrorCode.WRONG_NUMBER_OF_PARAMETERS_FOR_OPERATOR]);
verify([source]);
« pkg/analyzer/lib/src/generated/resolver.dart ('K') | « pkg/analyzer/lib/src/task/dart.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698