From 45041f708eb9660f14b9735883b600b6ba16b585 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 11 Sep 2017 19:51:44 +0200 Subject: libstd++ modularization fixes --- std-core.mxx | 39 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/std-core.mxx b/std-core.mxx index 3aba712..27f9f1e 100644 --- a/std-core.mxx +++ b/std-core.mxx @@ -29,10 +29,23 @@ export module std.core; export { #include + + // These are defined in which we have pre-included. + // +#ifdef __GLIBCXX__ + namespace std + { + typedef std::size_t size_t; + typedef std::ptrdiff_t ptrdiff_t; + typedef std::nullptr_t nullptr_t; + } +#endif + #include #include #include +#include #include #include @@ -46,7 +59,12 @@ export #include #include // @@ Not in the proposal. +#include #include +#include +#include +#include +#include } #if defined(_MSC_VER) || defined(__clang__) @@ -56,8 +74,27 @@ export #include #include #include -#include #include #include + +#ifndef __GLIBCXX__ +# include +#else +// Contents of without static __ioinit. +// +namespace std _GLIBCXX_VISIBILITY(default) +{ +_GLIBCXX_BEGIN_NAMESPACE_VERSION + extern istream cin; + extern ostream cout; + extern ostream cerr; + extern ostream clog; + + //static ios_base::Init __ioinit; +_GLIBCXX_END_NAMESPACE_VERSION +} +#endif } + + #endif -- cgit v1.1