hanchenye-llvm-project/libcxx
Jordan Rupprecht 78b6374997 [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

llvm-svn: 338157
2018-07-27 20:02:58 +00:00
..
benchmarks Add new string benchmarks 2018-07-10 04:11:22 +00:00
cmake [CMake] Don't install c++abi headers in standalone libc++ build 2018-07-25 22:57:39 +00:00
docs [libc++] Introduce _LIBCPP_HIDE_FROM_ABI to replace _LIBCPP_INLINE_VISIBILITY 2018-07-27 12:46:03 +00:00
fuzzing Wrote my own version of is_permutation; that was dominating the timings 2018-01-19 03:17:45 +00:00
include [libc++] Exclude posix_l/strtonum fallback inclusion for newlib > 2.4 2018-07-27 20:02:58 +00:00
lib Add libc++fs to the test deps, and not to the target 'cxx'. 2018-07-27 03:47:46 +00:00
src Implement <filesystem> 2018-07-27 03:07:09 +00:00
test Add libc++fs to the test deps, and not to the target 'cxx'. 2018-07-27 03:47:46 +00:00
utils Implement <filesystem> 2018-07-27 03:07:09 +00:00
www Correctly mark the Filesystem status as complete. 2018-07-27 03:16:02 +00:00
.arcconfig [libcxx] Set up .arcconfig to point to new Diffusion CXX repository 2017-12-04 17:55:28 +00:00
.clang-format Make clang-format use C++03 syntax 2017-04-15 02:45:43 +00:00
.gitignore
CMakeLists.txt Attempt to unbreak *all the bots* 2018-07-27 03:42:58 +00:00
CREDITS.TXT Try again, this time with the correct address 2017-12-29 19:26:53 +00:00
LICENSE.TXT
NOTES.TXT Reland "Use custom command and target to install libc++ headers" 2018-06-12 03:10:02 +00:00
TODO.TXT Add list of filesystem NB comments to TODO.TXT so they can be tracked separately 2017-03-06 21:23:36 +00:00
appveyor-reqs-install.cmd Update Clang version on Appveyor bots 2018-04-04 04:33:09 +00:00
appveyor.yml Rename Appveyor install helper script. 2017-05-10 02:43:02 +00:00