| Index: runtime/lib/mirrors.cc
|
| diff --git a/runtime/lib/mirrors.cc b/runtime/lib/mirrors.cc
|
| index 4de3ffb41325cd9e128b70e9043df8a1bbe84f80..079a1d03ab7a09f8076a3cff85c5c33214b3c74a 100644
|
| --- a/runtime/lib/mirrors.cc
|
| +++ b/runtime/lib/mirrors.cc
|
| @@ -381,7 +381,8 @@ static RawInstance* CreateCombinatorMirror(const Object& identifiers,
|
| static RawInstance* CreateLibraryDependencyMirror(const Instance& importer,
|
| const Namespace& ns,
|
| const String& prefix,
|
| - bool is_import) {
|
| + const bool is_import,
|
| + const bool is_deferred) {
|
| const Library& importee = Library::Handle(ns.library());
|
| const Instance& importee_mirror =
|
| Instance::Handle(CreateLibraryMirror(importee));
|
| @@ -414,14 +415,14 @@ static RawInstance* CreateLibraryDependencyMirror(const Instance& importer,
|
| UNREACHABLE();
|
| }
|
|
|
| - const Array& args = Array::Handle(Array::New(6));
|
| + const Array& args = Array::Handle(Array::New(7));
|
| args.SetAt(0, importer);
|
| args.SetAt(1, importee_mirror);
|
| args.SetAt(2, combinators);
|
| args.SetAt(3, prefix);
|
| args.SetAt(4, Bool::Get(is_import));
|
| - args.SetAt(5, metadata);
|
| - // is_deferred?
|
| + args.SetAt(5, Bool::Get(is_deferred));
|
| + args.SetAt(6, metadata);
|
| return CreateMirror(Symbols::_LocalLibraryDependencyMirror(), args);
|
| }
|
|
|
| @@ -443,7 +444,7 @@ DEFINE_NATIVE_ENTRY(LibraryMirror_libraryDependencies, 2) {
|
| for (intptr_t i = 0; i < ports.Length(); i++) {
|
| ns ^= ports.At(i);
|
| if (!ns.IsNull()) {
|
| - dep = CreateLibraryDependencyMirror(lib_mirror, ns, prefix, true);
|
| + dep = CreateLibraryDependencyMirror(lib_mirror, ns, prefix, true, false);
|
| if (!dep.IsNull()) {
|
| deps.Add(dep);
|
| }
|
| @@ -454,7 +455,7 @@ DEFINE_NATIVE_ENTRY(LibraryMirror_libraryDependencies, 2) {
|
| ports = lib.exports();
|
| for (intptr_t i = 0; i < ports.Length(); i++) {
|
| ns ^= ports.At(i);
|
| - dep = CreateLibraryDependencyMirror(lib_mirror, ns, prefix, false);
|
| + dep = CreateLibraryDependencyMirror(lib_mirror, ns, prefix, false, false);
|
| if (!dep.IsNull()) {
|
| deps.Add(dep);
|
| }
|
| @@ -472,7 +473,8 @@ DEFINE_NATIVE_ENTRY(LibraryMirror_libraryDependencies, 2) {
|
| for (intptr_t i = 0; i < ports.Length(); i++) {
|
| ns ^= ports.At(i);
|
| if (!ns.IsNull()) {
|
| - dep = CreateLibraryDependencyMirror(lib_mirror, ns, prefix, true);
|
| + dep = CreateLibraryDependencyMirror(lib_mirror, ns, prefix, true,
|
| + lib_prefix.is_deferred_load());
|
| if (!dep.IsNull()) {
|
| deps.Add(dep);
|
| }
|
|
|