Index: pkg/compiler/lib/src/js_backend/patch_resolver.dart |
diff --git a/pkg/compiler/lib/src/js_backend/patch_resolver.dart b/pkg/compiler/lib/src/js_backend/patch_resolver.dart |
index aea3cbfcf45b8799f8fa9c3f5897f834421f81ee..36dfd074617a264b04f49e2b31e90feca09ef534 100644 |
--- a/pkg/compiler/lib/src/js_backend/patch_resolver.dart |
+++ b/pkg/compiler/lib/src/js_backend/patch_resolver.dart |
@@ -9,9 +9,12 @@ import '../common/tasks.dart' show |
import '../compiler.dart' show |
Compiler; |
import '../dart_types.dart'; |
+import '../diagnostics/diagnostic_listener.dart' show |
+ DiagnosticMessage; |
import '../diagnostics/invariant.dart' show |
invariant; |
-import '../diagnostics/messages.dart' show MessageKind; |
+import '../diagnostics/messages.dart' show |
+ MessageKind; |
import '../elements/elements.dart'; |
import '../elements/modelx.dart'; |
import '../tree/tree.dart'; |
@@ -31,7 +34,7 @@ class PatchResolverTask extends CompilerTask { |
checkMatchingPatchSignatures(element, patch); |
element = patch; |
} else { |
- compiler.reportError( |
+ compiler.reportErrorMessage( |
element, MessageKind.PATCH_EXTERNAL_WITHOUT_IMPLEMENTATION); |
} |
return element; |
@@ -57,15 +60,19 @@ class PatchResolverTask extends CompilerTask { |
DartType patchParameterType = patchParameter.computeType(compiler); |
if (originParameterType != patchParameterType) { |
compiler.reportError( |
- originParameter.parseNode(compiler), |
- MessageKind.PATCH_PARAMETER_TYPE_MISMATCH, |
- {'methodName': origin.name, |
- 'parameterName': originParameter.name, |
- 'originParameterType': originParameterType, |
- 'patchParameterType': patchParameterType}); |
- compiler.reportInfo(patchParameter, |
- MessageKind.PATCH_POINT_TO_PARAMETER, |
- {'parameterName': patchParameter.name}); |
+ compiler.createMessage( |
+ originParameter.parseNode(compiler), |
+ MessageKind.PATCH_PARAMETER_TYPE_MISMATCH, |
+ {'methodName': origin.name, |
+ 'parameterName': originParameter.name, |
+ 'originParameterType': originParameterType, |
+ 'patchParameterType': patchParameterType}), |
+ <DiagnosticMessage>[ |
+ compiler.createMessage( |
+ patchParameter, |
+ MessageKind.PATCH_POINT_TO_PARAMETER, |
+ {'parameterName': patchParameter.name}), |
+ ]); |
} else { |
// Hack: Use unparser to test parameter equality. This only works |
// because we are restricting patch uses and the approach cannot be used |
@@ -82,14 +89,19 @@ class PatchResolverTask extends CompilerTask { |
// optional parameter. |
&& origin != compiler.unnamedListConstructor) { |
compiler.reportError( |
- originParameter.parseNode(compiler), |
- MessageKind.PATCH_PARAMETER_MISMATCH, |
- {'methodName': origin.name, |
- 'originParameter': originParameterText, |
- 'patchParameter': patchParameterText}); |
- compiler.reportInfo(patchParameter, |
- MessageKind.PATCH_POINT_TO_PARAMETER, |
- {'parameterName': patchParameter.name}); |
+ compiler.createMessage( |
+ originParameter.parseNode(compiler), |
+ MessageKind.PATCH_PARAMETER_MISMATCH, |
+ {'methodName': origin.name, |
+ 'originParameter': originParameterText, |
+ 'patchParameter': patchParameterText}), |
+ <DiagnosticMessage>[ |
+ compiler.createMessage( |
+ patchParameter, |
+ MessageKind.PATCH_POINT_TO_PARAMETER, |
+ {'parameterName': patchParameter.name}), |
+ ]); |
+ |
} |
} |
} |
@@ -106,7 +118,7 @@ class PatchResolverTask extends CompilerTask { |
compiler.withCurrentElement(patch, () { |
Node errorNode = |
patchTree.returnType != null ? patchTree.returnType : patchTree; |
- compiler.reportError( |
+ compiler.reportErrorMessage( |
errorNode, MessageKind.PATCH_RETURN_TYPE_MISMATCH, |
{'methodName': origin.name, |
'originReturnType': originSignature.type.returnType, |
@@ -116,7 +128,7 @@ class PatchResolverTask extends CompilerTask { |
if (originSignature.requiredParameterCount != |
patchSignature.requiredParameterCount) { |
compiler.withCurrentElement(patch, () { |
- compiler.reportError( |
+ compiler.reportErrorMessage( |
patchTree, |
MessageKind.PATCH_REQUIRED_PARAMETER_COUNT_MISMATCH, |
{'methodName': origin.name, |
@@ -133,7 +145,7 @@ class PatchResolverTask extends CompilerTask { |
if (originSignature.optionalParametersAreNamed != |
patchSignature.optionalParametersAreNamed) { |
compiler.withCurrentElement(patch, () { |
- compiler.reportError( |
+ compiler.reportErrorMessage( |
patchTree, |
MessageKind.PATCH_OPTIONAL_PARAMETER_NAMED_MISMATCH, |
{'methodName': origin.name}); |
@@ -143,7 +155,7 @@ class PatchResolverTask extends CompilerTask { |
if (originSignature.optionalParameterCount != |
patchSignature.optionalParameterCount) { |
compiler.withCurrentElement(patch, () { |
- compiler.reportError( |
+ compiler.reportErrorMessage( |
patchTree, |
MessageKind.PATCH_OPTIONAL_PARAMETER_COUNT_MISMATCH, |
{'methodName': origin.name, |