* lib/mkmf.rb (try_var): should fail for functions.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14224 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2007-12-14 02:54:08 +00:00
parent a2ccbc14d9
commit 3cce5965da
3 changed files with 8 additions and 5 deletions

View File

@ -1,4 +1,4 @@
Fri Dec 14 10:01:40 2007 Nobuyoshi Nakada <nobu@ruby-lang.org> Fri Dec 14 11:54:06 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* configure.in (RUBY_CHECK_VARTYPE): check if a variable is defined * configure.in (RUBY_CHECK_VARTYPE): check if a variable is defined
and its type. and its type.
@ -7,6 +7,8 @@ Fri Dec 14 10:01:40 2007 Nobuyoshi Nakada <nobu@ruby-lang.org>
* missing/strftime.c (strftime): fix for timezone. [ruby-dev:32536] * missing/strftime.c (strftime): fix for timezone. [ruby-dev:32536]
* lib/mkmf.rb (try_var): should fail for functions.
Fri Dec 14 08:17:24 2007 Tanaka Akira <akr@fsij.org> Fri Dec 14 08:17:24 2007 Tanaka Akira <akr@fsij.org>
* eval.c (rb_protect): restore root_jmpbuf even if proc exits by * eval.c (rb_protect): restore root_jmpbuf even if proc exits by

View File

@ -639,13 +639,14 @@ AC_CACHE_CHECK([for external $1], rb_cv_var_$1,
[rb_cv_var_$1=no [rb_cv_var_$1=no
AC_TRY_COMPILE([#define _XOPEN_SOURCE 1 AC_TRY_COMPILE([#define _XOPEN_SOURCE 1
$2 $2
void *t;], const volatile void *volatile t;],
[t = &(&$1)[0];], [t = &(&$1)[0];],
[for t in $3; do [for t in $3; do
AC_TRY_COMPILE([#define _XOPEN_SOURCE 1 AC_TRY_COMPILE([#define _XOPEN_SOURCE 1
$2 $2
extern $t $1;], extern $t $1;
[void *t = &(&$1)[0];], const volatile void *volatile t;],
[t = &(&$1)[0];],
[rb_cv_var_$1=$t; break]) [rb_cv_var_$1=$t; break])
done])]) done])])
if test "[$rb_cv_var_]$1" != no; then if test "[$rb_cv_var_]$1" != no; then

View File

@ -478,7 +478,7 @@ def try_var(var, headers = nil, &b)
#{headers} #{headers}
/*top*/ /*top*/
int main() { return 0; } int main() { return 0; }
int t() { const volatile void *volatile p; p = (void *)&#{var}; return 0; } int t() { const volatile void *volatile p; p = &(&#{var})[0]; return 0; }
SRC SRC
end end