ladybird/Tests/LibJS/Bytecode/expected/named-function-expression.txt
Martin Chrástek 29dc4df4e5 LibJS: Fix var declarations in direct eval inside catch blocks
The Annex B.3.4 spec change requires distinguishing
catch clause environments from other lexical environments
when checking for var/let conflicts in eval, which is now tracked
via a flag on DeclarativeEnvironment and propagated through the
CreateLexicalEnvironment bytecode instruction from the Rust codegen.
2026-05-15 10:01:08 +02:00

15 lines
608 B
Text

$cf62a0f7 named-function-expression.js:4:6
Registers: 8
Blocks: 1
block0:
[ 0] GetLexicalEnvironment dst:reg4
[ 8] CreateLexicalEnvironment dst:reg5, parent:reg4, capacity:0, is_catch_environment:false
[ 20] CreateVariable `Oops`, is_immutable:true, is_global:false, is_strict:false
[ 30] NewFunction dst:reg6, shared_function_data_index:0
[ 48] InitializeLexicalBinding `Oops`, src:reg6
[ 60] SetLexicalEnvironment environment:reg4
[ 68] SetGlobal `Oops`, src:reg6
[ 80] GetGlobal dst:reg5, `Oops`
[ 98] GetById dst:reg7, base:reg5, `x` (Oops.x)
[ b8] End value:reg7