Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(576)

Unified Diff: runtime/lib/mirrors.cc

Issue 68103016: When ClassMirrors are created by enumerating members of a LibraryMirror, have the ClassMirror use t… (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | runtime/lib/mirrors_impl.dart » ('j') | tests/lib/mirrors/hierarchy_invariants_test.dart » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/lib/mirrors.cc
diff --git a/runtime/lib/mirrors.cc b/runtime/lib/mirrors.cc
index 22b2d47fa4b2ea1c81d9c35b3526026b3b24293d..2d37bc00b45f7fb0250433ac5a2eaff27ea20355 100644
--- a/runtime/lib/mirrors.cc
+++ b/runtime/lib/mirrors.cc
@@ -349,7 +349,7 @@ static RawInstance* CreateClassMirror(const Class& cls,
const Bool& is_generic = Bool::Get(cls.NumTypeParameters() != 0);
const Bool& is_mixin_typedef = Bool::Get(cls.is_mixin_typedef());
- const Array& args = Array::Handle(Array::New(6));
+ const Array& args = Array::Handle(Array::New(7));
args.SetAt(0, MirrorReference::Handle(MirrorReference::New(cls)));
args.SetAt(1, type);
// We do not set the names of anonymous mixin applications because the mirrors
@@ -358,9 +358,10 @@ static RawInstance* CreateClassMirror(const Class& cls,
if (!cls.IsAnonymousMixinApplication()) {
args.SetAt(2, String::Handle(cls.Name()));
}
- args.SetAt(3, is_generic);
- args.SetAt(4, is_mixin_typedef);
- args.SetAt(5, cls.NumTypeParameters() == 0 ? Bool::False() : is_declaration);
+ args.SetAt(3, owner_mirror);
+ args.SetAt(4, is_generic);
+ args.SetAt(5, is_mixin_typedef);
+ args.SetAt(6, cls.NumTypeParameters() == 0 ? Bool::False() : is_declaration);
return CreateMirror(Symbols::_LocalClassMirrorImpl(), args);
}
« no previous file with comments | « no previous file | runtime/lib/mirrors_impl.dart » ('j') | tests/lib/mirrors/hierarchy_invariants_test.dart » ('J')

Powered by Google App Engine
This is Rietveld 408576698