Index: tools/dom/src/dart2js_CustomElementSupport.dart |
diff --git a/tools/dom/src/dart2js_CustomElementSupport.dart b/tools/dom/src/dart2js_CustomElementSupport.dart |
index 62c120d0ba1af72440d214be874a9027e61a1f24..5f81b1869bb6483ef4494f5f8dbfb5efcbe0fdb7 100644 |
--- a/tools/dom/src/dart2js_CustomElementSupport.dart |
+++ b/tools/dom/src/dart2js_CustomElementSupport.dart |
@@ -163,8 +163,11 @@ class _JSElementUpgrader implements ElementUpgrader { |
_nativeType = HtmlElement; |
} else { |
var element = document.createElement(extendsTag); |
- if (!JS('bool', '(# instanceof window[#])', |
- element, baseClassName)) { |
+ if (!JS('bool', '(# instanceof window[#])', element, baseClassName) && |
+ // Exception to support template elements (extended for core pieces of |
+ // Polymer 1.0) when using the webcomponents-lite.js polyfill on IE11: |
+ !((extendsTag == 'template' && |
+ JS('bool', '(# instanceof window["HTMLUnknownElement"])', element)))) { |
throw new UnsupportedError( |
'extendsTag does not match base native class'); |
} |