On 04/12/17 23:04 +0000, Jonathan Wakely wrote: >On 03/12/17 23:08 +0200, Ville Voutilainen wrote: >>Tested on Linux-x64. >> >>2017-11-14 Ville Voutilainen >> >> Implement LWG 2221 >> * include/std/ostream (operator<<(nullptr_t)): New. >> * testsuite/27_io/basic_ostream/inserters_other/char/lwg2221.cc: New. > >>diff --git a/libstdc++-v3/include/std/ostream b/libstdc++-v3/include/std/ostream >>index f7cab03..18011bc 100644 >>--- a/libstdc++-v3/include/std/ostream >>+++ b/libstdc++-v3/include/std/ostream >>@@ -245,6 +245,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION >> operator<<(const void* __p) >> { return _M_insert(__p); } >> >>+#if __cplusplus > 201402L >>+ __ostream_type& >>+ operator<<(nullptr_t) >>+ { return *this << "nullptr"; } >>+#endif > >As discussed on IRC, this requires a new symbol to be exported for the >std::ostream and std::wostream explicit instantiations, or the new >test will fail to link at -O0. > >That should wait for stage 1. > This patch for a C++17 feature (posted over a year ago) should have gone in during stage 1. I've taken care of the symbol exports that were missing from the original patch. Tested x86_64-linux, committed to trunk.