| // { dg-do run { target c++11 } } |
| // PR libstdc++/101542 |
| #include <ext/rope> |
| #include <testsuite_hooks.h> |
| |
| template<typename T> T f(T x) { return x; } |
| template<typename T> T g(T x) { return std::move(x); } |
| |
| int main() |
| { |
| std::string s; |
| { |
| __gnu_cxx::sequence_buffer<std::string> a(s); |
| { |
| __gnu_cxx::sequence_buffer<std::string> b = std::move(a); |
| b.push_back('h'); |
| b.push_back('e'); |
| b.push_back('l'); |
| b.push_back('l'); |
| b.push_back('o'); |
| |
| __gnu_cxx::sequence_buffer<std::string> c; |
| c = f(g((std::move(b)))); |
| } |
| } |
| VERIFY( s == "hello" ); |
| } |