PR libstdc++/87618 * config/abi/pre/gnu.ver: Fix typos in patterns for basic_stringbuf. * testsuite/27_io/basic_stringbuf/cons/char/default.cc: Disable optimisation to check constructor definition can be linked to. * testsuite/27_io/basic_stringbuf/cons/wchar_t/default.cc: Likewise.
Tested x86_64-linux, committed to trunk.
commit 158dfd8b832f5f6f560955081259f3454507c54c Author: Jonathan Wakely <jwak...@redhat.com> Date: Tue Oct 16 11:55:46 2018 +0100 PR libstdc++/87618 fix typos in linker script PR libstdc++/87618 * config/abi/pre/gnu.ver: Fix typos in patterns for basic_stringbuf. * testsuite/27_io/basic_stringbuf/cons/char/default.cc: Disable optimisation to check constructor definition can be linked to. * testsuite/27_io/basic_stringbuf/cons/wchar_t/default.cc: Likewise. diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver index 4766d28f708..f90ead30dd1 100644 --- a/libstdc++-v3/config/abi/pre/gnu.ver +++ b/libstdc++-v3/config/abi/pre/gnu.ver @@ -2032,10 +2032,10 @@ GLIBCXX_3.4.26 { _ZNSt13runtime_erroraSEOS_; # Default constructors for stringstreams - _ZNSt15basic_stringbuf[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]Ev; + _ZNSt15basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]Ev; _ZNSt18basic_stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]Ev; _ZNSt19basic_[io]stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]Ev; - _ZNSt7__cxx1115basic_stringbuf[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]Ev; + _ZNSt7__cxx1115basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]Ev; _ZNSt7__cxx1118basic_stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]Ev; _ZNSt7__cxx1119basic_[io]stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]Ev; diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/cons/char/default.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/cons/char/default.cc index 06b242f8295..44a8c4f8da6 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/cons/char/default.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/cons/char/default.cc @@ -17,6 +17,7 @@ // C++11 27.8.2.1 basic_stringbuf constructors [stringbuf.cons] +// { dg-options "-O0" } // { dg-do run { target c++11 } } #include <sstream> @@ -29,7 +30,15 @@ void test01() test.operator()<std::stringbuf>(); } -int main() +void test02() +{ + // PR libstdc++/87618 + // Compiled without optimisation to check this constructor is exported. + std::stringbuf sb; +} + +int main() { test01(); + test02(); } diff --git a/libstdc++-v3/testsuite/27_io/basic_stringbuf/cons/wchar_t/default.cc b/libstdc++-v3/testsuite/27_io/basic_stringbuf/cons/wchar_t/default.cc index 6ac75ab65c3..e51154e54b6 100644 --- a/libstdc++-v3/testsuite/27_io/basic_stringbuf/cons/wchar_t/default.cc +++ b/libstdc++-v3/testsuite/27_io/basic_stringbuf/cons/wchar_t/default.cc @@ -17,6 +17,7 @@ // C++11 27.8.2.1 basic_stringbuf constructors [stringbuf.cons] +// { dg-options "-O0" } // { dg-do run { target c++11 } } #include <sstream> @@ -29,7 +30,15 @@ void test01() test.operator()<std::wstringbuf>(); } -int main() +void test02() +{ + // PR libstdc++/87618 + // Compiled without optimisation to check this constructor is exported. + std::wstringbuf sb; +} + +int main() { test01(); + test02(); }