| Index: pkg/compiler/lib/src/serialization/modelz.dart
|
| diff --git a/pkg/compiler/lib/src/serialization/modelz.dart b/pkg/compiler/lib/src/serialization/modelz.dart
|
| index e06cb037efeeba8d0d085cf3b2192ddff6c754dd..b34f787af495ddf812127d047571bba43e0a6172 100644
|
| --- a/pkg/compiler/lib/src/serialization/modelz.dart
|
| +++ b/pkg/compiler/lib/src/serialization/modelz.dart
|
| @@ -588,6 +588,7 @@ abstract class LibraryMemberMixin implements DeserializedElementZ {
|
|
|
| abstract class ClassMemberMixin implements DeserializedElementZ {
|
| ClassElement _class;
|
| + CompilationUnitElement _compilationUnit;
|
|
|
| @override
|
| Element get enclosingElement => enclosingClass;
|
| @@ -607,7 +608,16 @@ abstract class ClassMemberMixin implements DeserializedElementZ {
|
| LibraryElement get library => enclosingClass.library;
|
|
|
| @override
|
| - CompilationUnitElement get compilationUnit => enclosingClass.compilationUnit;
|
| + CompilationUnitElement get compilationUnit {
|
| + if (_compilationUnit == null) {
|
| + _compilationUnit =
|
| + _decoder.getElement(Key.COMPILATION_UNIT, isOptional: true);
|
| + if (_compilationUnit == null) {
|
| + _compilationUnit = enclosingClass.compilationUnit;
|
| + }
|
| + }
|
| + return _compilationUnit;
|
| + }
|
| }
|
|
|
| abstract class InstanceMemberMixin implements DeserializedElementZ {
|
|
|