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

Unified Diff: pkg/front_end/lib/src/fasta/kernel/body_builder.dart

Issue 2675603002: Reduce strong mode errors and warnings (Closed)
Patch Set: Created 3 years, 11 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/front_end/lib/src/fasta/kernel/body_builder.dart
diff --git a/pkg/front_end/lib/src/fasta/kernel/body_builder.dart b/pkg/front_end/lib/src/fasta/kernel/body_builder.dart
index 881d8f3cdd4b486557a0ad43ae39a5a349b640ba..25e2299d5e346f5214e5828e3767dbacf29e5225 100644
--- a/pkg/front_end/lib/src/fasta/kernel/body_builder.dart
+++ b/pkg/front_end/lib/src/fasta/kernel/body_builder.dart
@@ -224,13 +224,14 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
}
Block popBlock(int count) {
- List<Statement> statements = popList(count) ?? <Statement>[];
+ List statements = popList(count) ?? <Statement>[];
Siggi Cherem (dart-lang) 2017/02/02 04:26:58 this is a temporary way of hiding some errors, but
ahe 2017/02/02 07:28:30 I'm strongly opposed to removing types to appease
Siggi Cherem (dart-lang) 2017/02/02 16:30:35 in this case I don't believe it's a bug in the che
List<Statement> copy;
for (int i = 0; i < statements.length; i++) {
var statement = statements[i];
if (statement is List) {
copy ??= new List<Statement>.from(statements.getRange(0, i));
- copy.addAll(statement);
+ List<Statement> subStatements = statement;
+ copy.addAll(subStatements);
} else if (copy != null) {
copy.add(statement);
}
@@ -459,7 +460,7 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
@override
void endArguments(int count, Token beginToken, Token endToken) {
debugEvent("Arguments");
- List arguments = popList(count) ?? <Expression>[];
+ List<Expression> arguments = popList(count) ?? <Expression>[];
int firstNamedArgument = arguments.length;
for (int i = 0; i < arguments.length; i++) {
var node = arguments[i];
@@ -493,7 +494,7 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
void endSend(Token token) {
debugEvent("Send");
Arguments arguments = pop();
- List typeArguments = pop();
+ List<DartType> typeArguments = pop();
Object receiver = pop();
if (arguments != null && typeArguments != null) {
arguments.types.addAll(typeArguments);
@@ -989,7 +990,8 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
if (variableOrExpression is VariableDeclaration) {
variables.add(variableOrExpression);
} else if (variableOrExpression is List) {
- variables.addAll(variableOrExpression);
+ List<VariableDeclaration> vars = variableOrExpression;
Siggi Cherem (dart-lang) 2017/02/02 04:26:58 This has an implicit downcast warning, without thi
ahe 2017/02/02 07:28:30 Implicit downcast warning?!?
kasperl 2017/02/02 07:51:30 Is this the warning that will go away when we impl
Siggi Cherem (dart-lang) 2017/02/06 23:35:50 It's quite related, but there is an extra nuance h
+ variables.addAll(vars);
} else if (variableOrExpression == null) {
// Do nothing.
} else if (variableOrExpression is Expression) {
@@ -1189,7 +1191,7 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
push(name.buildTypesWithBuiltArguments(arguments));
} else if (name is TypeDeclarationBuilder) {
push(name.buildTypesWithBuiltArguments(arguments));
- } else if (name is TypeBuilder) {
+ } else if (name is KernelTypeBuilder) {
Siggi Cherem (dart-lang) 2017/02/02 04:26:58 .build is not defined in TypeBuilder - I was expec
ahe 2017/02/02 07:28:30 This fix isn't correct. It potentially causes a Ty
Siggi Cherem (dart-lang) 2017/02/02 16:30:35 Shold `TypeBuilder` declare a `build()` method ins
Siggi Cherem (dart-lang) 2017/02/06 23:35:50 Done - I added `build()` to TypeBuilder as discuss
push(name.build());
} else {
push(toKernelType(name, arguments));
@@ -1269,7 +1271,8 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
name.fileOffset);
}
if (thisKeyword == null) {
- variable = builder.build();
+ KernelFormalParameterBuilder formalBuilder = builder;
+ variable = formalBuilder.build();
variable.initializer = name.initializer;
} else if (builder.isField && builder.parent == classBuilder) {
FieldBuilder field = builder;
@@ -1609,7 +1612,7 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
debugEvent("NewExpression");
Arguments arguments = pop();
String name = pop();
- List typeArguments = pop();
+ List<DartType> typeArguments = pop();
var type = pop();
if (typeArguments != null) {
@@ -1618,7 +1621,7 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
}
String errorName;
- if (type is ClassBuilder) {
+ if (type is KernelClassBuilder) {
Builder b = type.findConstructorOrFactory(name);
Member target;
if (b == null) {
@@ -1731,7 +1734,7 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
exitLocalScope();
}
FormalParameters formals = pop();
- List typeParameters = pop();
+ List<TypeParameter> typeParameters = pop();
push(formals.addToFunction(new FunctionNode(body,
typeParameters: typeParameters, asyncMarker: asyncModifier)));
functionNestingLevel--;
@@ -1757,7 +1760,7 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
AsyncMarker asyncModifier = pop();
exitLocalScope();
FormalParameters formals = pop();
- List typeParameters = pop();
+ List<TypeParameter> typeParameters = pop();
FunctionNode function = formals.addToFunction(new FunctionNode(body,
typeParameters: typeParameters, asyncMarker: asyncModifier));
push(new FunctionExpression(function));

Powered by Google App Engine
This is Rietveld 408576698