summaryrefslogtreecommitdiffstats
path: root/libcxx/include/module.modulemap
diff options
context:
space:
mode:
authorEric Fiselier <eric@efcs.ca>2016-11-19 01:14:15 +0000
committerEric Fiselier <eric@efcs.ca>2016-11-19 01:14:15 +0000
commit074d46d55fe27d12af5bdfa880408e93a98e874d (patch)
treeec3a5f8e0ddaba7ac50cac58b01d68e9b4dba3b3 /libcxx/include/module.modulemap
parent72f4997cbfb542f33da45cbc01d7a2e1bd26b3c8 (diff)
downloadbcm5719-llvm-074d46d55fe27d12af5bdfa880408e93a98e874d.tar.gz
bcm5719-llvm-074d46d55fe27d12af5bdfa880408e93a98e874d.zip
[libcxx] Implement locale.h to fix modules build
Summary: Because `locale.h` isn't part of the libc++ modules the class definitions it provides are exported as part of `__locale` (since it happens to be build first). This breaks `<clocale>` which exports `std::lconv` without including `<__locale>`. This patch implements `locale.h` to fix this issue, it also adds support for testing libc++ with modules. Reviewers: mclow.lists, rsmith, EricWF Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D26826 llvm-svn: 287413
Diffstat (limited to 'libcxx/include/module.modulemap')
-rw-r--r--libcxx/include/module.modulemap8
1 files changed, 7 insertions, 1 deletions
diff --git a/libcxx/include/module.modulemap b/libcxx/include/module.modulemap
index b966423a2c1..3199d3d9021 100644
--- a/libcxx/include/module.modulemap
+++ b/libcxx/include/module.modulemap
@@ -40,7 +40,13 @@ module std [system] {
}
// <iso646.h> provided by compiler.
// <limits.h> provided by compiler or C library.
- // <locale.h> provided by C library.
+ module locale_h {
+ header "locale.h"
+/*
+ export_macros LC_ALL LC_COLLATE LC_CTYPE LC_MONETARY LC_NUMERIC LC_TIME
+*/
+ export *
+ }
module math_h {
header "math.h"
/*
OpenPOWER on IntegriCloud