Index: src/ast/scopeinfo.cc |
diff --git a/src/ast/scopeinfo.cc b/src/ast/scopeinfo.cc |
index 20a96938c2a93625c2d7b97409c219e518dddabd..e64cc1bee3ee81ccff355ff3e956b7393cb8bec4 100644 |
--- a/src/ast/scopeinfo.cc |
+++ b/src/ast/scopeinfo.cc |
@@ -419,7 +419,7 @@ String* ScopeInfo::FunctionName() { |
ModuleInfo* ScopeInfo::ModuleDescriptorInfo() { |
DCHECK(scope_type() == MODULE_SCOPE); |
- return static_cast<ModuleInfo*>(get(ModuleInfoEntryIndex())); |
+ return ModuleInfo::cast(get(ModuleInfoEntryIndex())); |
} |
String* ScopeInfo::ParameterName(int var) { |
@@ -716,12 +716,26 @@ void ScopeInfo::Print() { |
PrintList("context slots", Context::MIN_CONTEXT_SLOTS, |
ContextLocalNameEntriesIndex(), |
ContextLocalNameEntriesIndex() + ContextLocalCount(), this); |
+ // TODO(neis): Print module stuff if present. |
} |
PrintF("}\n"); |
} |
#endif // DEBUG |
+Handle<ModuleInfoEntry> ModuleInfoEntry::New(Isolate* isolate, |
+ Handle<Object> export_name, |
+ Handle<Object> local_name, |
+ Handle<Object> import_name, |
+ Handle<Object> module_request) { |
+ Handle<ModuleInfoEntry> result = isolate->factory()->NewModuleInfoEntry(); |
+ result->set(kExportNameIndex, *export_name); |
+ result->set(kLocalNameIndex, *local_name); |
+ result->set(kImportNameIndex, *import_name); |
+ result->set(kModuleRequestIndex, *module_request); |
+ return result; |
+} |
+ |
Handle<ModuleInfo> ModuleInfo::New(Isolate* isolate, ModuleDescriptor* descr) { |
// Serialize special exports. |
Handle<FixedArray> special_exports = |