[glibc] ldbl-opt: Fix -mlong-double-128 configure test for Clang
Sam James via Glibc-cvs <[email protected]>
| Newsgroups | gmane.comp.lib.glibc.cvs |
|---|---|
| Message-ID | <[email protected]> |
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e7a14f03b8d5e34e8ac46db6c377da5c66a3ec2a commit e7a14f03b8d5e34e8ac46db6c377da5c66a3ec2a Author: Matt Turner <[email protected]> Date: Sun Jul 26 00:27:37 2026 -0400 ldbl-opt: Fix -mlong-double-128 configure test for Clang The check for -mlong-double-128 support wrapped its test code in AC_LANG_PROGRAM, which places the body inside main(). The body defines a function, so it became a nested function definition -- a GCC extension that Clang does not implement, making the test fail (and thus the whole build error out) with Clang even though it supports -mlong-double-128. Use AC_LANG_SOURCE so the function is defined at file scope, matching the pattern already used by the powerpc64le compiler checks, and regenerate configure. Reviewed-by: Sam James <[email protected]> Diff: --- sysdeps/ieee754/ldbl-opt/configure | 7 ------- sysdeps/ieee754/ldbl-opt/configure.ac | 2 +- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/sysdeps/ieee754/ldbl-opt/configure b/sysdeps/ieee754/ldbl-opt/configure old mode 100644 new mode 100755 index bc6552da0b..7769cc9781 --- a/sysdeps/ieee754/ldbl-opt/configure +++ b/sysdeps/ieee754/ldbl-opt/configure @@ -13,17 +13,10 @@ CFLAGS="$CFLAGS -mlong-double-128" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -int -main (void) -{ - #ifndef __LONG_DOUBLE_128__ # error "compiler did not predefine __LONG_DOUBLE_128__ as expected" #endif long double foobar (long double x) { return x; } - ; - return 0; -} _ACEOF if ac_fn_c_try_compile "$LINENO" then : diff --git a/sysdeps/ieee754/ldbl-opt/configure.ac b/sysdeps/ieee754/ldbl-opt/configure.ac index 70e3b32dc6..1c500ad581 100644 --- a/sysdeps/ieee754/ldbl-opt/configure.ac +++ b/sysdeps/ieee754/ldbl-opt/configure.ac @@ -6,7 +6,7 @@ AC_CACHE_CHECK(whether $CC $CFLAGS supports -mlong-double-128, libc_cv_mlong_double_128, [dnl save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -mlong-double-128" -AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[ +AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ #ifndef __LONG_DOUBLE_128__ # error "compiler did not predefine __LONG_DOUBLE_128__ as expected" #endif