diff options
author | Jordan Rupprecht <rupprecht@google.com> | 2018-07-27 20:02:58 +0000 |
---|---|---|
committer | Jordan Rupprecht <rupprecht@google.com> | 2018-07-27 20:02:58 +0000 |
commit | 8634f6fcca8961d4a7db9dedaebf2ce216cd0592 (patch) | |
tree | cd38d6484d8ad35991a65c8df3f292b1ad8e0be8 | |
parent | 67fff22b9a92dd24521a91f97266f6b56ab16d7b (diff) |
[libc++] Exclude posix_l/strtonum fallback inclusion for newlib > 2.4
Summary:
[libc++] Exclude posix_l/strtonum fallback inclusion for newlib > 2.4
r338122 changed the linkage of some methods which revealed an existing ODR violation, e.g.:
projects/libcxx/include/support/xlocale/__posix_l_fallback.h:83:38: error: 'internal_linkage' attribute does not appear on the first declaration of 'iswcntrl_l'
inline _LIBCPP_INLINE_VISIBILITY int iswcntrl_l(wint_t c, locale_t) {
^
lib/include/wctype.h:55:12: note: previous definition is here
extern int iswcntrl_l (wint_t, locale_t);
These were added to newlib in 2.4 [1] [2], so move them to the already existing include guard.
[1] https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=commit;h=238455adfab4f8070ac65400aac22bb8a9e502fc
[2] https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;a=commit;h=8493c1631643fada62384768408852bc0fa6ff44
Reviewers: ldionne, rsmith, EricWF
Subscribers: christof, cfe-commits
Differential Revision: https://reviews.llvm.org/D49927
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@338157 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/support/newlib/xlocale.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/support/newlib/xlocale.h b/include/support/newlib/xlocale.h index 4b7e9b749..09f9e3987 100644 --- a/include/support/newlib/xlocale.h +++ b/include/support/newlib/xlocale.h @@ -19,9 +19,9 @@ #if !defined(__NEWLIB__) || __NEWLIB__ < 2 || \ __NEWLIB__ == 2 && __NEWLIB_MINOR__ < 5 #include <support/xlocale/__nop_locale_mgmt.h> -#endif #include <support/xlocale/__posix_l_fallback.h> #include <support/xlocale/__strtonum_fallback.h> +#endif #endif // _NEWLIB_VERSION |