This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug math/22146] C++ build issue with float128 on x86_64
- From: "bernd dot kuhls at t-online dot de" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sourceware dot org
- Date: Tue, 19 Sep 2017 20:58:36 +0000
- Subject: [Bug math/22146] C++ build issue with float128 on x86_64
- Auto-submitted: auto-generated
- References: <bug-22146-131@http.sourceware.org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=22146
bernd.kuhls@t-online.de changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |bernd.kuhls@t-online.de
--- Comment #5 from bernd.kuhls@t-online.de ---
(In reply to joseph@codesourcery.com from comment #4)
> What did the libstdc++ configure check "for ISO C99 support in <math.h>
> for C++98" result in when you built your GCC? If it failed, you should
> look in more detail at config.log from the libstdc++ build and see exactly
> how the headers from current glibc 2.26 branch sources got expanded there.
Hi,
I am also testing Romains patches in buildroot and tried them with
https://sourceware.org/git/?p=glibc.git;a=commit;h=2422c6032fd5e95b1c29df5b8671455ead51314e
today.
Quoting configure log of gcc-6.4.0:
> Checking multilib configuration for libstdc++-v3...
> mkdir -p -- x86_64-buildroot-linux-gnu/libstdc++-v3
> Configuring in x86_64-buildroot-linux-gnu/libstdc++-v3
[...]
> checking for sin in -lm... yes
> checking for ISO C99 support in <math.h> for C++98... no
> checking tgmath.h usability... yes
Now quoting config.log
configure:16569: checking for sin in -lm
[...]
configure:16606: result: yes
configure:16620: checking for ISO C99 support in <math.h> for C++98
configure:16689:
/home/bernd/buildroot/br6/output/build/host-gcc-final-6.4.0/build/./gcc/xgcc
-shared-libgcc
-B/home/bernd/buildroot/br6/output/build/host-gcc-final-6.4.0/build/./gcc
-nostdinc++
-L/home/bernd/buildroot/br6/output/build/host-gcc-final-6.4.0/build/x86_64-buildroot-linux-gnu/libstdc++-v3/src
-L/home/bernd/buildroot/br6/output/build/host-gcc-final-6.4.0/build/x86_64-buildroot-linux-gnu/libstdc++-v3/src/.libs
-L/home/bernd/buildroot/br6/output/build/host-gcc-final-6.4.0/build/x86_64-buildroot-linux-gnu/libstdc++-v3/libsupc++/.libs
-B/home/bernd/buildroot/br6/output/host/x86_64-buildroot-linux-gnu/bin/
-B/home/bernd/buildroot/br6/output/host/x86_64-buildroot-linux-gnu/lib/
-isystem
/home/bernd/buildroot/br6/output/host/x86_64-buildroot-linux-gnu/include
-isystem
/home/bernd/buildroot/br6/output/host/x86_64-buildroot-linux-gnu/sys-include
-o conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
-Os -D_GNU_SOURCE -std=c++98 -fno-exceptions conftest.cpp -lm >&5
In file included from conftest.cpp:36:0:
conftest.cpp: In function 'int main()':
conftest.cpp:42:5: error: expected primary-expression before '__typeof'
i = fpclassify(d1);
^
conftest.cpp:42:5: error: expected primary-expression before 'float'
i = fpclassify(d1);
^
conftest.cpp:42:5: error: '__builtin_types_compatible_p' was not declared in
this scope
i = fpclassify(d1);
^
conftest.cpp:42:5: error: expected primary-expression before '__typeof'
i = fpclassify(d1);
^
conftest.cpp:42:5: error: expected primary-expression before 'double'
i = fpclassify(d1);
^
conftest.cpp:42:5: error: expected primary-expression before '__typeof'
i = fpclassify(d1);
^
conftest.cpp:42:5: error: expected primary-expression before 'long'
i = fpclassify(d1);
^
conftest.cpp:42:5: error: '__builtin_choose_expr' was not declared in this
scope
i = fpclassify(d1);
^
conftest.cpp:42:5: error: '__builtin_choose_expr' was not declared in this
scope
i = fpclassify(d1);
^
conftest.cpp:42:5: error: redeclaration of
'<typeprefixerror>__builtin_choose_expr'
conftest.cpp:42:5: note: previous declaration
'<typeprefixerror>__builtin_choose_expr'
i = fpclassify(d1);
^
conftest.cpp:42:5: error: '__builtin_choose_expr' was not declared in this
scope
i = fpclassify(d1);
^
conftest.cpp:42:5: error: redeclaration of
'<typeprefixerror>__builtin_choose_expr'
conftest.cpp:42:5: note: previous declaration
'<typeprefixerror>__builtin_choose_expr'
i = fpclassify(d1);
^
configure:16689: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "package-unused"
| #define PACKAGE_TARNAME "libstdc++"
| #define PACKAGE_VERSION "version-unused"
| #define PACKAGE_STRING "package-unused version-unused"
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| #define _GLIBCXX_HOSTED 1
| #define _GLIBCXX_VERBOSE 1
| #define _GLIBCXX_ATOMIC_BUILTINS 1
| #define _GLIBCXX_USE_INT128 1
| #define _GLIBCXX_USE_FLOAT128 1
| #define HAVE_STRXFRM_L 1
| #define HAVE_STRERROR_L 1
| #define HAVE_STRERROR_R 1
| #define HAVE_LIBINTL_H 1
| #define _GLIBCXX_USE_NLS 1
| #define _GLIBCXX_USE_LONG_LONG 1
| #define HAVE_WCHAR_H 1
| #define HAVE_MBSTATE_T 1
| #define HAVE_WCTYPE_H 1
| #define _GLIBCXX_USE_WCHAR_T 1
| /* end confdefs.h. */
| #include <math.h>
| volatile double d1, d2;
| volatile int i;
| int
| main ()
| {
| i = fpclassify(d1);
| i = isfinite(d1);
| i = isinf(d1);
| i = isnan(d1);
| i = isnormal(d1);
| i = signbit(d1);
| i = isgreater(d1, d2);
| i = isgreaterequal(d1, d2);
| i = isless(d1, d2);
| i = islessequal(d1, d2);
| i = islessgreater(d1, d2);
| i = islessgreater(d1, d2);
| i = isunordered(d1, d2);
|
| ;
| return 0;
| }
configure:16700: result: no
configure:16714: checking tgmath.h usability
--
You are receiving this mail because:
You are on the CC list for the bug.