aboutsummaryrefslogtreecommitdiffstats
path: root/eval.c
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2022-11-25 13:49:06 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2022-11-25 15:50:06 +0900
commit45bad8c7b8851a179515407d7ee2ed70545e4b40 (patch)
treeaa00da5618e6a51d3c1013eb3f3c6a5d29b73299 /eval.c
parente29d9e9fbaa435bf6d650299f8c0729042733b46 (diff)
downloadruby-45bad8c7b8851a179515407d7ee2ed70545e4b40.tar.gz
The mode flags may be clobbered by tag jumps
Diffstat (limited to 'eval.c')
-rw-r--r--eval.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/eval.c b/eval.c
index ea0d80c87b..e1bbf6f2c3 100644
--- a/eval.c
+++ b/eval.c
@@ -213,7 +213,7 @@ rb_ec_cleanup(rb_execution_context_t *ec, enum ruby_tag_type ex)
step_1: step++;
VALUE err = ec->errinfo;
- int mode0 = 0, mode1 = 0;
+ volatile int mode0 = 0, mode1 = 0;
if (err != save_error && !NIL_P(err)) {
mode0 = exiting_split(err, &sysex, &signaled);
}