ruby-changes:33425
From: nobu <ko1@a...>
Date: Wed, 2 Apr 2014 19:57:48 +0900 (JST)
Subject: [ruby-changes:33425] nobu:r45504 (trunk): eval_intern.h: __builtin_longjmp requires literal 1 on gcc 4.9
nobu 2014-04-02 19:57:45 +0900 (Wed, 02 Apr 2014) New Revision: 45504 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=45504 Log: eval_intern.h: __builtin_longjmp requires literal 1 on gcc 4.9 * eval_intern.h (rb_threadptr_tag_jump): gcc 4.9 disallows other than literal 1 as the second argument of __builtin_longjmp(). [ruby-core:61800] [Bug #9692] Modified files: trunk/eval_intern.h Index: eval_intern.h =================================================================== --- eval_intern.h (revision 45503) +++ eval_intern.h (revision 45504) @@ -141,7 +141,8 @@ NORETURN(static inline void rb_threadptr https://github.com/ruby/ruby/blob/trunk/eval_intern.h#L141 static inline void rb_threadptr_tag_jump(rb_thread_t *th, int st) { - ruby_longjmp(th->tag->buf, (th->state = st)); + th->state = st; + ruby_longjmp(th->tag->buf, 1); } /* -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/