Index: sdk/lib/_internal/compiler/implementation/js_backend/backend.dart |
diff --git a/sdk/lib/_internal/compiler/implementation/js_backend/backend.dart b/sdk/lib/_internal/compiler/implementation/js_backend/backend.dart |
index 3a6df623eca49e02b254f4b9ddf45ecbe45cac04..99b1dae4bf595b127dcfa7fc5e77273911429b5b 100644 |
--- a/sdk/lib/_internal/compiler/implementation/js_backend/backend.dart |
+++ b/sdk/lib/_internal/compiler/implementation/js_backend/backend.dart |
@@ -33,7 +33,6 @@ class CheckedModeHelper { |
void generateAdditionalArguments(SsaCodeGenerator codegen, |
HTypeConversion node, |
List<jsAst.Expression> arguments) { |
- assert(!node.typeExpression.isMalformed); |
// No additional arguments needed. |
} |
} |
@@ -45,7 +44,6 @@ class PropertyCheckedModeHelper extends CheckedModeHelper { |
HTypeConversion node, |
List<jsAst.Expression> arguments) { |
DartType type = node.typeExpression; |
- assert(!type.isMalformed); |
String additionalArgument = codegen.backend.namer.operatorIsType(type); |
arguments.add(js.string(additionalArgument)); |
} |
@@ -107,15 +105,15 @@ class FunctionTypeCheckedModeHelper extends CheckedModeHelper { |
} |
} |
-class MalformedCheckedModeHelper extends CheckedModeHelper { |
- const MalformedCheckedModeHelper(SourceString name) : super(name); |
+class AmbiguousTypeCheckedModeHelper extends CheckedModeHelper { |
+ const AmbiguousTypeCheckedModeHelper(SourceString name) : super(name); |
void generateAdditionalArguments(SsaCodeGenerator codegen, |
HTypeConversion node, |
List<jsAst.Expression> arguments) { |
DartType type = node.typeExpression; |
- assert(type.isMalformed); |
- String reasons = Types.fetchReasonsFromMalformedType(type); |
+ assert(type.containsAmbiguousTypes); |
+ String reasons = Types.fetchReasonsFromAmbiguousType(type); |
arguments.add(js.string(quote('$type'))); |
arguments.add(js.string(quote(reasons))); |
@@ -855,11 +853,11 @@ class JavaScriptBackend extends Backend { |
// We also need the native variant of the check (for DOM types). |
helper = getNativeCheckedModeHelper(type, typeCast: false); |
if (helper != null) world.addToWorkList(helper.getElement(compiler)); |
- if (type.isMalformed) { |
+ if (type.containsAmbiguousTypes) { |
enqueueInResolution(getThrowMalformedSubtypeError(), elements); |
return; |
} |
- } else if (type.isMalformed) { |
+ } else if (type.containsAmbiguousTypes) { |
registerThrowRuntimeError(elements); |
return; |
} |
@@ -1122,14 +1120,14 @@ class JavaScriptBackend extends Backend { |
Element element = type.element; |
bool nativeCheck = nativeCheckOnly || |
emitter.nativeEmitter.requiresNativeIsCheck(element); |
- if (type.isMalformed) { |
+ if (type.containsAmbiguousTypes) { |
// Check for malformed types first, because the type may be a list type |
// with a malformed argument type. |
if (nativeCheckOnly) return null; |
return typeCast |
- ? const MalformedCheckedModeHelper( |
+ ? const AmbiguousTypeCheckedModeHelper( |
const SourceString('malformedTypeCast')) |
- : const MalformedCheckedModeHelper( |
+ : const AmbiguousTypeCheckedModeHelper( |
const SourceString('malformedTypeCheck')); |
} else if (type == compiler.types.voidType) { |
assert(!typeCast); // Cannot cast to void. |