| Index: lib/compiler/implementation/elements/elements.dart
|
| diff --git a/lib/compiler/implementation/elements/elements.dart b/lib/compiler/implementation/elements/elements.dart
|
| index ad690789f5fbb8c414a1ab6995d0c5cfe0b77fdc..d05b3b67ec80855fc68e4edc861ae8af6c78b8b9 100644
|
| --- a/lib/compiler/implementation/elements/elements.dart
|
| +++ b/lib/compiler/implementation/elements/elements.dart
|
| @@ -708,9 +708,14 @@ class FunctionElement extends Element {
|
|
|
| Node parseNode(DiagnosticListener listener) {
|
| if (cachedNode !== null) return cachedNode;
|
| - if (patch !== null) {
|
| - cachedNode = patch.parseNode(listener);
|
| + if (patch === null) {
|
| + if (modifiers.isExternal()) {
|
| + // An external function that isn't patched has no body.
|
| + return null;
|
| + }
|
| + return cachedNode;
|
| }
|
| + cachedNode = patch.parseNode(listener);
|
| return cachedNode;
|
| }
|
|
|
|
|