diff options
author | 卜部昌平 <shyouhei@ruby-lang.org> | 2020-01-30 17:49:51 +0900 |
---|---|---|
committer | 卜部昌平 <shyouhei@ruby-lang.org> | 2020-02-06 11:46:51 +0900 |
commit | 72bbf60f3a6b87a36bebc6b10ae867d8bcb9cadd (patch) | |
tree | 2d9426dd596ff909eb5054ad7c38cfa2de8e9cc4 /tool | |
parent | 3b69552a5ca1fb814fd7279edd970be458a907f2 (diff) | |
download | ruby-72bbf60f3a6b87a36bebc6b10ae867d8bcb9cadd.tar.gz |
do not assume GCC for __builtin_setjmp
Namely recent Sun C compiler has this function, and is not a GCC.
Meanwhile the code without RUBY_JMP_BUF assumes GCC. We have to define
the macro when we detect __builtin_setjmp for non-GCC compilers.
Diffstat (limited to 'tool')
-rw-r--r-- | tool/m4/ruby_setjmp_type.m4 | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/tool/m4/ruby_setjmp_type.m4 b/tool/m4/ruby_setjmp_type.m4 index 9da9a88680..29893543a4 100644 --- a/tool/m4/ruby_setjmp_type.m4 +++ b/tool/m4/ruby_setjmp_type.m4 @@ -47,6 +47,6 @@ AS_IF([test x$setjmp_prefix:$setjmp_sigmask = xsig:], [ AC_MSG_RESULT(${setjmp_prefix}setjmp${setjmp_suffix}${setjmp_cast:+\($setjmp_cast\)}${setjmp_sigmask}) AC_DEFINE_UNQUOTED([RUBY_SETJMP(env)], [${setjmp_prefix}setjmp${setjmp_suffix}($setjmp_cast(env)${setjmp_sigmask})]) AC_DEFINE_UNQUOTED([RUBY_LONGJMP(env,val)], [${setjmp_prefix}longjmp($setjmp_cast(env),val)]) -AS_IF([test x$setjmp_prefix != x__builtin_], AC_DEFINE_UNQUOTED(RUBY_JMP_BUF, ${setjmp_sigmask+${setjmp_prefix}}jmp_buf)) +AS_IF([test "(" "$GCC" != yes ")" -o x$setjmp_prefix != x__builtin_], AC_DEFINE_UNQUOTED(RUBY_JMP_BUF, ${setjmp_sigmask+${setjmp_prefix}}jmp_buf)) AS_IF([test x$setjmp_suffix = xex], [AC_DEFINE_UNQUOTED(RUBY_USE_SETJMPEX, 1)]) ])dnl |