mirror of
https://github.com/RGBCube/serenity
synced 2025-05-15 09:54:57 +00:00
LibJS/Bytecode: Perform ToNumeric on accumulator before postfix inc/dec
This ensures we get the expected behavior of code like: let a = [] let b = a++ (Where b should be 0, not [], because JavaScript.)
This commit is contained in:
parent
c9bd324369
commit
d364d99cb8
4 changed files with 26 additions and 0 deletions
|
@ -1966,6 +1966,7 @@ Bytecode::CodeGenerationErrorOr<void> UpdateExpression::generate_bytecode(Byteco
|
|||
Optional<Bytecode::Register> previous_value_for_postfix_reg;
|
||||
if (!m_prefixed) {
|
||||
previous_value_for_postfix_reg = generator.allocate_register();
|
||||
generator.emit<Bytecode::Op::ToNumeric>();
|
||||
generator.emit<Bytecode::Op::Store>(*previous_value_for_postfix_reg);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue