llvm-project/libcxx
Daniel Sanders 4788179a2c [libcxx] Fix definition of regex_traits::__regex_word on big-endian glibc systems
Summary:
On glibc, the bits used for the various character classes is endian dependant
(see _ISbit() in ctypes.h) but __regex_word does not account for this and uses
a spare bit that isn't spare on big-endian. On big-endian, it overlaps with the
bit for graphic characters which causes '-', '@', etc. to be considered a word
character.

Fixed this by defining the value using _ISbit(15) on MIPS glibc systems. We've
restricted this to MIPS for now to avoid the risk of introducing failures in
other targets.

Fixes PR26476.

Reviewers: hans, mclow.lists

Subscribers: dsanders, cfe-commits

Differential Revision: http://reviews.llvm.org/D17132

llvm-svn: 261088
2016-02-17 13:16:31 +00:00
..
cmake Issue a warning instead of fatal errors when checks for libatomic fail. 2016-02-16 14:15:27 +00:00
docs [docs] Remove references to autoconf build. 2016-01-30 01:11:42 +00:00
include [libcxx] Fix definition of regex_traits::__regex_word on big-endian glibc systems 2016-02-17 13:16:31 +00:00
lib Re-commit "Introduce a cmake module to figure out whether we need to link with libatomic." 2016-02-11 12:43:04 +00:00
src [libcxx] Whitelist inclusion of sysctl.h instead of blacklisting 2016-01-29 13:53:23 +00:00
test Fix LWG issue 2469 - Use piecewise construction in unordered_map::operator[]. 2016-02-11 21:45:53 +00:00
utils Add more missing license headers 2016-01-19 21:58:49 +00:00
www Add some status 2016-02-16 16:05:15 +00:00
.arcconfig Update Arcanist config to point to reviews.llvm.org 2014-06-10 18:29:36 +00:00
.gitignore [libc++] Refactor test components into modules. 2015-01-09 18:03:29 +00:00
CMakeLists.txt build: silence warnings in in-tree build 2016-02-08 03:50:18 +00:00
CREDITS.TXT Add self to CREDITS.txt 2015-02-26 00:48:22 +00:00
LICENSE.TXT Update copyright year to 2015. 2015-03-12 20:13:11 +00:00
TODO.TXT Test commit to see if libcxx.llvm.org/docs builds 2015-09-04 22:57:00 +00:00