| Index: pkg/analyzer/lib/src/dart/element/element.dart
|
| diff --git a/pkg/analyzer/lib/src/dart/element/element.dart b/pkg/analyzer/lib/src/dart/element/element.dart
|
| index e4a608597b6fd23f87d53f453b86a2fb1dab6e2e..501f0df39d12a78adbc5f47287787d5024014939 100644
|
| --- a/pkg/analyzer/lib/src/dart/element/element.dart
|
| +++ b/pkg/analyzer/lib/src/dart/element/element.dart
|
| @@ -5461,14 +5461,20 @@ class LibraryElementImpl extends ElementImpl implements LibraryElement {
|
| _unlinkedDefiningUnit.exports.length == unlinkedPublicExports.length);
|
| int length = unlinkedNonPublicExports.length;
|
| if (length != 0) {
|
| - List<ExportElement> exports = new List<ExportElement>(length);
|
| + List<ExportElement> exports = new List<ExportElement>();
|
| for (int i = 0; i < length; i++) {
|
| UnlinkedExportPublic serializedExportPublic =
|
| unlinkedPublicExports[i];
|
| - UnlinkedExportNonPublic serializedExportNonPublic =
|
| - unlinkedNonPublicExports[i];
|
| - exports[i] = new ExportElementImpl.forSerialized(
|
| - serializedExportPublic, serializedExportNonPublic, library);
|
| + LibraryElement exportedLibrary = resynthesizerContext
|
| + .buildExportedLibrary(serializedExportPublic.uri);
|
| + if (exportedLibrary != null) {
|
| + UnlinkedExportNonPublic serializedExportNonPublic =
|
| + unlinkedNonPublicExports[i];
|
| + ExportElementImpl exportElement =
|
| + new ExportElementImpl.forSerialized(
|
| + serializedExportPublic, serializedExportNonPublic, library);
|
| + exports.add(exportElement);
|
| + }
|
| }
|
| _exports = exports;
|
| } else {
|
| @@ -5534,11 +5540,18 @@ class LibraryElementImpl extends ElementImpl implements LibraryElement {
|
| List<UnlinkedImport> unlinkedImports = _unlinkedDefiningUnit.imports;
|
| int length = unlinkedImports.length;
|
| if (length != 0) {
|
| - List<ImportElement> imports = new List<ImportElement>(length);
|
| + List<ImportElement> imports = new List<ImportElement>();
|
| LinkedLibrary linkedLibrary = resynthesizerContext.linkedLibrary;
|
| for (int i = 0; i < length; i++) {
|
| - imports[i] = new ImportElementImpl.forSerialized(
|
| - unlinkedImports[i], linkedLibrary.importDependencies[i], library);
|
| + int dependency = linkedLibrary.importDependencies[i];
|
| + LibraryElement importedLibrary =
|
| + resynthesizerContext.buildImportedLibrary(dependency);
|
| + if (importedLibrary != null) {
|
| + ImportElementImpl importElement =
|
| + new ImportElementImpl.forSerialized(
|
| + unlinkedImports[i], dependency, library);
|
| + imports.add(importElement);
|
| + }
|
| }
|
| _imports = imports;
|
| } else {
|
|
|