diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2021-10-07 18:16:04 -0700 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2024-04-17 16:12:09 -0300 |
commit | d2765f0fa2c6292ad25cfc6a74b91aa7ec0ea01a (patch) | |
tree | eab2e373187ecd279bd32ff73fad4f98b2c52d1d | |
parent | e182dc08d71c8268495acc1a980a7fb57fa84103 (diff) | |
download | glibc-d2765f0fa2c6292ad25cfc6a74b91aa7ec0ea01a.tar.gz glibc-d2765f0fa2c6292ad25cfc6a74b91aa7ec0ea01a.tar.xz glibc-d2765f0fa2c6292ad25cfc6a74b91aa7ec0ea01a.zip |
Disable __USE_EXTERN_INLINES for clang
clang does not allow to redefine attributes after function declaration. Although it work for external usage, its breaks the build for internal symbol that glibc provides as optimization (for instance bsearch with stdlib-bsearch.h or __cmsg_nxthdr). Disable such optimization for clang while building glibc.
-rw-r--r-- | include/features.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/features.h b/include/features.h index d92503dfed..23e29b9f4d 100644 --- a/include/features.h +++ b/include/features.h @@ -523,7 +523,7 @@ /* Decide whether we can define 'extern inline' functions in headers. */ #if __GNUC_PREREQ (2, 7) && defined __OPTIMIZE__ \ && !defined __OPTIMIZE_SIZE__ && !defined __NO_INLINE__ \ - && defined __extern_inline + && defined __extern_inline && !(defined __clang__ && defined _LIBC) # define __USE_EXTERN_INLINES 1 #endif |