jgreenhalgh added a comment. If this patch unconditionally defines _Float128, then I think it will conflict with the typedef for _Float128 for IEEE754 128-bit long double systems in glibc:
/* The type _Float128 exists only since GCC 7.0. */ # if !__GNUC_PREREQ (7, 0) || defined __cplusplus typedef long double _Float128; # endif https://sourceware.org/git/?p=glibc.git;a=blob_plain;f=sysdeps/ieee754/ldbl-128/bits/floatn.h;hb=HEAD This manifests on AArch64 as compile time failure as so: $ cat x.c #include <stdlib.h> $ clang x.c In file included from x.c:1: In file included from /usr/include/stdlib.h:55: /usr/include/aarch64-linux-gnu/bits/floatn.h:67:21: error: cannot combine with previous 'double' declaration specifier typedef long double _Float128; ^ 1 error generated. I think that is an inadequate guard check in glibc, but perhaps there is something clang can do to help out? Thanks, James Repository: rC Clang https://reviews.llvm.org/D40673 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits