https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79246
Bug ID: 79246 Summary: [C++17] with versioned namespace: FAIL: 27_io/manipulators/standard/wchar_t/2.cc (test for excess errors) Product: gcc Version: 7.0.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: redi at gcc dot gnu.org Target Milestone: --- This test fails when run with -std=gnu++17 for a --enable-symvers=gnu-versioned-namespace build spawn -ignore SIGHUP /home/jwakely/src/gcc/buildso7/./gcc/xg++ -shared-libgcc -B/home/jwakely/src/gcc/buildso7/./gcc -nostdinc++ -L/home/jwakely/src/gcc/buildso7/x86_64-pc-linux-gnu/libstdc++-v3/src -L/home/jwakely/src/gcc/buildso7/x86_64-pc-linux-gnu/libstdc++-v3/src/.libs -L/home/jwakely/src/gcc/buildso7/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/.libs -B/home/jwakely/gcc/so7/x86_64-pc-linux-gnu/bin/ -B/home/jwakely/gcc/so7/x86_64-pc-linux-gnu/lib/ -isystem /home/jwakely/gcc/so7/x86_64-pc-linux-gnu/include -isystem /home/jwakely/gcc/so7/x86_64-pc-linux-gnu/sys-include -B/home/jwakely/src/gcc/buildso7/x86_64-pc-linux-gnu/./libstdc++-v3/src/.libs -fmessage-length=0 -fno-show-column -ffunction-sections -fdata-sections -g -O2 -D_GNU_SOURCE -DLOCALEDIR="." -nostdinc++ -I/home/jwakely/src/gcc/buildso7/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu -I/home/jwakely/src/gcc/buildso7/x86_64-pc-linux-gnu/libstdc++-v3/include -I/home/jwakely/src/gcc/gcc/libstdc++-v3/libsupc++ -I/home/jwakely/src/gcc/gcc/libstdc++-v3/include/backward -I/home/jwakely/src/gcc/gcc/libstdc++-v3/testsuite/util /home/jwakely/src/gcc/gcc/libstdc++-v3/testsuite/27_io/manipulators/standard/wchar_t/2.cc -std=c++17 -fno-implicit-templates -fno-diagnostics-show-caret -fdiagnostics-color=never ./libtestc++.a -Wl,--gc-sections -L/home/jwakely/src/gcc/buildso7/x86_64-pc-linux-gnu/libstdc++-v3/src/filesystem/.libs -lm -o ./2.exe^M /tmp/cckkgPOG.o: In function `wchar_t* std::__7::basic_string<wchar_t, std::__7::char_traits<wchar_t>, std::__7::allocator<wchar_t> >::_S_construct_aux<wchar_t const*>(wchar_t const*, wchar_t const*, std::__7::allocator<wchar_t> const&, std::__7::__false_type)':^M /home/jwakely/src/gcc/buildso7/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/basic_string.h:4871: undefined reference to `wchar_t* std::__7::basic_string<wchar_t, std::__7::char_traits<wchar_t>, std::__7::allocator<wchar_t> >::_S_construct<wchar_t const*>(wchar_t const*, wchar_t const*, std::__7::allocator<wchar_t> const&, std::__7::forward_iterator_tag)'^M collect2: error: ld returned 1 exit status^M compiler exited with status 1 FAIL: 27_io/manipulators/standard/wchar_t/2.cc (test for excess errors) Excess errors: /home/jwakely/src/gcc/buildso7/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/basic_string.h:4871: undefined reference to `wchar_t* std::__7::basic_string<wchar_t, std::__7::char_traits<wchar_t>, std::__7::allocator<wchar_t> >::_S_construct<wchar_t const*>(wchar_t const*, wchar_t const*, std::__7::allocator<wchar_t> const&, std::__7::forward_iterator_tag)' collect2: error: ld returned 1 exit status UNRESOLVED: 27_io/manipulators/standard/wchar_t/2.cc compilation failed to produce executable It looks like we need an explicit instantiation of that function in the DSO.