summaryrefslogtreecommitdiff
path: root/configure.in
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-04-03 22:13:48 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2014-04-03 22:13:48 +0000
commit5c20b01270e8bcbd6ea92b759354ec3be137784a (patch)
tree0e9e0ff22b8d77e289f7a4739e778e59b18cc308 /configure.in
parent80b36a7b1ed4800aad68a57ec7303fdedd8da699 (diff)
configure.in: restore flags
* configure.in (ac_cv_func___builtin_setjmp): should not skip flags restoration in RUBY_WERROR_FLAG by `break`. [ruby-dev:48086] [Bug #9698] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45513 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in5
1 files changed, 3 insertions, 2 deletions
diff --git a/configure.in b/configure.in
index 052c57dea9..a7d3c75a7d 100644
--- a/configure.in
+++ b/configure.in
@@ -2079,6 +2079,7 @@ if test x"${ac_cv_func___builtin_setjmp}" = xyes; then
fi
AC_CACHE_CHECK(for __builtin_setjmp, ac_cv_func___builtin_setjmp,
[
+ ac_cv_func___builtin_setjmp=no
for cast in "" "(void *)"; do
RUBY_WERROR_FLAG(
[AC_TRY_LINK([@%:@include <setjmp.h>
@@ -2089,9 +2090,9 @@ AC_CACHE_CHECK(for __builtin_setjmp, ac_cv_func___builtin_setjmp,
void (*volatile f)(void) = t;
if (!__builtin_setjmp($cast jb)) printf("%d\n", f != 0);
],
- [ac_cv_func___builtin_setjmp="yes with cast ($cast)"; break],
- [ac_cv_func___builtin_setjmp=no])
+ [ac_cv_func___builtin_setjmp="yes with cast ($cast)"])
])
+ test "$ac_cv_func___builtin_setjmp" = no || break
done])
# we don't use _setjmp if _longjmp doesn't exist.