|
@@ -94,9 +94,11 @@ void Interpreter::enter_scope(const ScopeNode& scope_node, ScopeType scope_type,
|
|
|
HashMap<FlyString, Variable> scope_variables_with_declaration_kind;
|
|
|
scope_variables_with_declaration_kind.ensure_capacity(16);
|
|
|
|
|
|
+ bool is_program_node = is<Program>(scope_node);
|
|
|
+
|
|
|
for (auto& declaration : scope_node.variables()) {
|
|
|
for (auto& declarator : declaration.declarations()) {
|
|
|
- if (is<Program>(scope_node)) {
|
|
|
+ if (is_program_node && declaration.declaration_kind() == DeclarationKind::Var) {
|
|
|
declarator.target().visit(
|
|
|
[&](const NonnullRefPtr<Identifier>& id) {
|
|
|
global_object.put(id->string(), js_undefined());
|