[libcxx] r249738 - Split <ctype.h> out of <cctype>.

Richard Smith via cfe-commits cfe-commits at lists.llvm.org
Mon Oct 19 13:49:38 PDT 2015


On Mon, Oct 19, 2015 at 1:28 PM, Adrian Prantl via cfe-commits <
cfe-commits at lists.llvm.org> wrote:

>
> On Oct 16, 2015, at 5:47 PM, Richard Smith <richard at metafoo.co.uk> wrote:
>
> Great, looks like progress. Next you need a correct module map for libc++
> that actually covers all of its headers :) Try the attached one.
>
> Sorry for the delay.
> With the updated module map I get
>
> */Volumes/Data/llvm/_build.ninja.release/bin/../include/c++/v1/module.modulemap:64:14:
> **error: *
> *      header 'locale.h' not found*
>       header "locale.h"
> *             ^*
> */Volumes/Data/llvm/_build.ninja.release/bin/../include/c++/v1/cassert:20:10:
> note: *
>       submodule of top-level module 'std' implicitly imported here
> #include <__config>
> *         ^*
> and after commenting out the locale module I get the rather puzzling
> (shouldn’t this have been avoided by the clang changes?):
>

Ah right, complex.h should not really be treated as an [extern_c] module.
It doesn't make any sense in that context (... or in general ...). Try the
attached libc++ module map instead (sorry, untested on my end).


> While building module 'std' imported from
> /Volumes/Data/llvm/_build.ninja.release/bin/../include/c++/v1/cassert:20:
> In file included from <module-includes>:2:
> In file included from
> /Volumes/Data/llvm/_build.ninja.release/bin/../include/c++/v1/complex.h:29:
> In file included from
> /Volumes/Data/llvm/_build.ninja.release/bin/../include/c++/v1/ccomplex:21:
> In file included from
> /Volumes/Data/llvm/_build.ninja.release/bin/../include/c++/v1/complex:244:
> */Volumes/Data/llvm/_build.ninja.release/bin/../include/c++/v1/type_traits:219:1:
> **error: *
> *      templates must have C++ linkage*
> template <class>
> *^~~~~~~~~~~~~~~~*
> */Volumes/Data/llvm/_build.ninja.release/bin/../include/c++/v1/type_traits:222:1:
> **error: *
> *      templates must have C++ linkage*
> template <class _Tp>
> *^~~~~~~~~~~~~~~~~~~~*
> */Volumes/Data/llvm/_build.ninja.release/bin/../include/c++/v1/type_traits:225:1:
> **error: *
> *      templates must have C++ linkage*
> template <class _Tp, bool>
> *^~~~~~~~~~~~~~~~~~~~~~~~~~*
>
> —adrian
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20151019/7b2d2b7a/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: module.modulemap
Type: application/octet-stream
Size: 18254 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20151019/7b2d2b7a/attachment-0001.obj>


More information about the cfe-commits mailing list