| Index: pkg/front_end/lib/src/fasta/kernel/kernel_shadow_ast.dart
|
| diff --git a/pkg/front_end/lib/src/fasta/kernel/kernel_shadow_ast.dart b/pkg/front_end/lib/src/fasta/kernel/kernel_shadow_ast.dart
|
| index 1ce20e24d8004f6b10836c61d1d4a3edd4594640..05d7c6fc98b660d87af6576b8eadd98a50af3a95 100644
|
| --- a/pkg/front_end/lib/src/fasta/kernel/kernel_shadow_ast.dart
|
| +++ b/pkg/front_end/lib/src/fasta/kernel/kernel_shadow_ast.dart
|
| @@ -427,16 +427,19 @@ class KernelFunctionExpression extends FunctionExpression
|
| for (int i = 0; i < formals.length; i++) {
|
| KernelVariableDeclaration formal = formals[i];
|
| if (KernelVariableDeclaration.isImplicitlyTyped(formal)) {
|
| + DartType inferredType;
|
| if (formalTypesFromContext[i] != null) {
|
| - var inferredType = greatestClosure(inferrer.coreTypes,
|
| + inferredType = greatestClosure(inferrer.coreTypes,
|
| substitution.substituteType(formalTypesFromContext[i]));
|
| - inferrer.instrumentation?.record(
|
| - Uri.parse(inferrer.uri),
|
| - formal.fileOffset,
|
| - 'type',
|
| - new InstrumentationValueForType(inferredType));
|
| - formal.type = inferredType;
|
| + } else {
|
| + inferredType = const DynamicType();
|
| }
|
| + inferrer.instrumentation?.record(
|
| + Uri.parse(inferrer.uri),
|
| + formal.fileOffset,
|
| + 'type',
|
| + new InstrumentationValueForType(inferredType));
|
| + formal.type = inferredType;
|
| }
|
| }
|
|
|
|
|