summaryrefslogtreecommitdiff
path: root/lang/ruby22/files/patch-eval.c
diff options
context:
space:
mode:
authorSteve Wills <swills@FreeBSD.org>2016-12-07 12:47:30 +0000
committerSteve Wills <swills@FreeBSD.org>2016-12-07 12:47:30 +0000
commit33ba518bad0a8d7836ba0d2c3c258ec4be519970 (patch)
treed9a90850d0125875f654045ee3ee9b78ab1e0556 /lang/ruby22/files/patch-eval.c
parentUpdate to the 20161206 snapshot of GCC 5.4.1. (diff)
lang/ruby22: fix setjmp clobbered variables
PR: 206110 Submitted by: dim
Diffstat (limited to 'lang/ruby22/files/patch-eval.c')
-rw-r--r--lang/ruby22/files/patch-eval.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/lang/ruby22/files/patch-eval.c b/lang/ruby22/files/patch-eval.c
new file mode 100644
index 000000000000..c9e410810785
--- /dev/null
+++ b/lang/ruby22/files/patch-eval.c
@@ -0,0 +1,20 @@
+--- eval.c.orig 2014-12-09 02:16:27.000000000 +0100
++++ eval.c 2016-01-10 19:10:59.326340000 +0100
+@@ -797,7 +797,7 @@ rb_rescue2(VALUE (* b_proc) (ANYARGS), V
+ {
+ int state;
+ rb_thread_t *th = GET_THREAD();
+- rb_control_frame_t *cfp = th->cfp;
++ rb_control_frame_t *volatile cfp = th->cfp;
+ volatile VALUE result = Qfalse;
+ volatile VALUE e_info = th->errinfo;
+ va_list args;
+@@ -863,7 +863,7 @@ rb_protect(VALUE (* proc) (VALUE), VALUE
+ volatile VALUE result = Qnil;
+ volatile int status;
+ rb_thread_t *th = GET_THREAD();
+- rb_control_frame_t *cfp = th->cfp;
++ rb_control_frame_t *volatile cfp = th->cfp;
+ struct rb_vm_protect_tag protect_tag;
+ rb_jmpbuf_t org_jmpbuf;
+