| 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 17a4a4e33edba1d436a1fad8c427aafefde7e5e8..10f30c581ac22bf5b67070ff98afe66702a36296 100644
|
| --- a/pkg/compiler/lib/src/js_backend/patch_resolver.dart
|
| +++ b/pkg/compiler/lib/src/js_backend/patch_resolver.dart
|
| @@ -106,10 +106,24 @@ class PatchResolverTask extends CompilerTask {
|
| void checkMatchingPatchSignatures(
|
| FunctionElement origin, FunctionElement patch) {
|
| // TODO(johnniwinther): Show both origin and patch locations on errors.
|
| + FunctionExpression originTree = origin.node;
|
| FunctionSignature originSignature = origin.functionSignature;
|
| FunctionExpression patchTree = patch.node;
|
| FunctionSignature patchSignature = patch.functionSignature;
|
|
|
| + if ('${originTree.typeVariables}' != '${patchTree.typeVariables}') {
|
| + reporter.withCurrentElement(patch, () {
|
| + Node errorNode = patchTree.typeVariables != null
|
| + ? patchTree.typeVariables
|
| + : patchTree;
|
| + reporter.reportError(
|
| + reporter.createMessage(
|
| + errorNode,
|
| + MessageKind.PATCH_TYPE_VARIABLES_MISMATCH,
|
| + {'methodName': origin.name}),
|
| + [reporter.createMessage(origin, MessageKind.THIS_IS_THE_METHOD)]);
|
| + });
|
| + }
|
| if (originSignature.type.returnType != patchSignature.type.returnType) {
|
| reporter.withCurrentElement(patch, () {
|
| Node errorNode =
|
|
|