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 0dfd302191f10ccbfc9ba88b22a7cc28b9adf2f8..1b2a8707feabbfc7e217ae5511218b6ca3f361fb 100644 |
--- a/pkg/compiler/lib/src/js_backend/patch_resolver.dart |
+++ b/pkg/compiler/lib/src/js_backend/patch_resolver.dart |
@@ -34,6 +34,14 @@ class PatchResolverTask extends CompilerTask { |
checkMatchingPatchSignatures(element, patch); |
element = patch; |
} else { |
+ if (element.isConstructor) { |
+ // Note: currently we allow a couple external methods without a patch, |
+ // namely the *.fromEnvironment const constructors in int, bool, and |
+ // String. In the future we might also represent native DOM methods in |
+ // dart:html this way. |
+ ConstructorElementX constructor = element; |
+ if (constructor.isFromEnvironmentConstructor) return element; |
+ } |
reporter.reportErrorMessage( |
element, MessageKind.PATCH_EXTERNAL_WITHOUT_IMPLEMENTATION); |
} |