| Index: pkg/compiler/lib/src/inferrer/builder.dart
|
| diff --git a/pkg/compiler/lib/src/inferrer/builder.dart b/pkg/compiler/lib/src/inferrer/builder.dart
|
| index c9c92be952b9e157a5562d852bdbc135809b2d3f..125472e1ce9d51a877ed6b597ce2b489fc9901c1 100644
|
| --- a/pkg/compiler/lib/src/inferrer/builder.dart
|
| +++ b/pkg/compiler/lib/src/inferrer/builder.dart
|
| @@ -744,10 +744,13 @@ class ElementGraphBuilder extends ast.Visitor<TypeInformation>
|
| ast.Node exception = node.exception;
|
| if (exception != null) {
|
| ResolutionDartType type = elements.getType(node.type);
|
| - TypeInformation mask =
|
| - type == null || type.treatAsDynamic || type.isTypeVariable
|
| - ? types.dynamicType
|
| - : types.nonNullSubtype(type.element);
|
| + TypeInformation mask;
|
| + if (type == null || type.treatAsDynamic || type.isTypeVariable) {
|
| + mask = types.dynamicType;
|
| + } else {
|
| + ResolutionInterfaceType interfaceType = type;
|
| + mask = types.nonNullSubtype(interfaceType.element);
|
| + }
|
| locals.update(elements[exception], mask, node);
|
| }
|
| ast.Node trace = node.trace;
|
|
|