https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86590

--- Comment #33 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Jonathan Wakely from comment #2)
> As Marc said, the only difference is the explicit instantiation
> declarations. You'll get the same in C++14 if you disable them:
> 
> #include <bits/c++config.h>
> #undef _GLIBCXX_EXTERN_TEMPLATE
> #include <string>
> // ...
> 
> They're only disabled temporarily for C++17 until our C++17 support is
> stable, at which point we'll start exporting the new C++17 members of
> std::string from libstdc++.so and re-enable the explicit instantiation
> declarations.

N.B. this has happened on trunk for C++17 mode. To test the current state you
need to disable the explicit instantiations, either by compiling with
-std=gnu++2a or via the #undef shown above.

Reply via email to