From 77f88d00e01268be0864602804186d5d41021d3c Mon Sep 17 00:00:00 2001 From: Luke Wilde Date: Sat, 11 Jun 2022 23:13:02 +0100 Subject: [PATCH] LibJS/Bytecode: Make `return;` return undefined Previously it would return whatever was in the accumulator. --- Userland/Libraries/LibJS/Bytecode/ASTCodegen.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Userland/Libraries/LibJS/Bytecode/ASTCodegen.cpp b/Userland/Libraries/LibJS/Bytecode/ASTCodegen.cpp index e183a9115e..d0f9ce0329 100644 --- a/Userland/Libraries/LibJS/Bytecode/ASTCodegen.cpp +++ b/Userland/Libraries/LibJS/Bytecode/ASTCodegen.cpp @@ -1363,6 +1363,8 @@ Bytecode::CodeGenerationErrorOr ReturnStatement::generate_bytecode(Bytecod { if (m_argument) TRY(m_argument->generate_bytecode(generator)); + else + generator.emit(js_undefined()); if (generator.is_in_generator_or_async_function()) { generator.perform_needed_unwinds();