diff options
author | Michael Chastain <mec@google.com> | 2004-01-08 08:00:55 +0000 |
---|---|---|
committer | Michael Chastain <mec@google.com> | 2004-01-08 08:00:55 +0000 |
commit | 0fd3b50324f001af775486119d8cf44721694755 (patch) | |
tree | 3c6b645fc7f27bcb81fd165a7c2894a0ed881bed /gdb/testsuite/gdb.cp/bs15503.cc | |
parent | 10d1bea8d5777bdf84dac49697e2e613e1da8af5 (diff) | |
download | gdb-0fd3b50324f001af775486119d8cf44721694755.zip gdb-0fd3b50324f001af775486119d8cf44721694755.tar.gz gdb-0fd3b50324f001af775486119d8cf44721694755.tar.bz2 |
2004-01-07 Michael Chastain <mec.gnu@mindspring.com>
* gdb.hp/gdb.defects/bs15503.exp: Renamed to gdb.cp/bs15503.exp.
* gdb.hp/gdb.defects/bs15503.cc: Renamed to gdb.cp/bs15503.cc.
Diffstat (limited to 'gdb/testsuite/gdb.cp/bs15503.cc')
-rw-r--r-- | gdb/testsuite/gdb.cp/bs15503.cc | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.cp/bs15503.cc b/gdb/testsuite/gdb.cp/bs15503.cc new file mode 100644 index 0000000..759bc0f --- /dev/null +++ b/gdb/testsuite/gdb.cp/bs15503.cc @@ -0,0 +1,52 @@ +#include <string> +#include <iostream.h> + +template <class T> +class StringTest { +public: + virtual void runTest(); + void testFunction(); +}; + +template <class T> +void StringTest<T>:: runTest() { + testFunction (); +} + +template <class T> +void StringTest <T>::testFunction() { + // initialize s with string literal + cout << "in StringTest" << endl; + string s("I am a shot string"); + cout << s << endl; + + // insert 'r' to fix "shot" + s.insert(s.begin()+10,'r' ); + cout << s << endl; + + // concatenate another string + s += "and now a longer string"; + cout << s << endl; + + // find position where blank needs to be inserted + string::size_type spos = s.find("and"); + s.insert(spos, " "); + cout << s << endl; + + // erase the concatenated part + s.erase(spos); + cout << s << endl; +} + +int main() { + StringTest<wchar_t> ts; + ts.runTest(); +} + +/* output: +I am a shot string +I am a short string +I am a short stringand now a longer string +I am a short string and now a longer string +I am a short string +*/ |