mirror of
https://github.com/mruby/mruby
synced 2026-06-08 16:11:16 +00:00
2e4a8e8edd
After pattern matching code generation, the sp (stack pointer) must be restored to match the success path value. The failure path (after RAISEIF) left sp in a different state, causing incorrect register allocation in subsequent code like string interpolation. This caused OP_STRCAT to use the wrong register, leading to null-dereference when trying to modify a non-string value as a string. Co-authored-by: Claude <noreply@anthropic.com>