diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/opt/thunk4.C')
-rw-r--r-- | gcc/testsuite/g++.dg/opt/thunk4.C | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/opt/thunk4.C b/gcc/testsuite/g++.dg/opt/thunk4.C new file mode 100644 index 000000000..7dd5ea433 --- /dev/null +++ b/gcc/testsuite/g++.dg/opt/thunk4.C @@ -0,0 +1,63 @@ +// { dg-do compile } +// { dg-options "-O1" } +namespace std __attribute__ ((__visibility__ ("default"))) +{ + template < class _CharT > struct char_traits; +} +namespace std __attribute__ ((__visibility__ ("default"))) +{ + template < typename _CharT, typename _Traits = + char_traits < _CharT > >class basic_iostream; +} + +extern "C++" +{ + namespace std + { + class exception + { + public:exception () throw () + { + } + }; + } +} +namespace std __attribute__ ((__visibility__ ("default"))) +{ + class ios_base + { + public:class failure:public exception + { + }; + virtual ~ ios_base (); + }; +template < typename _CharT, typename _Traits > class basic_ios:public + ios_base + { + }; +template < typename _CharT, typename _Traits > class basic_ostream:virtual public basic_ios < _CharT, + _Traits + > + { + }; +} +namespace std __attribute__ ((__visibility__ ("default"))) +{ +template < typename _CharT, typename _Traits > class basic_istream:virtual public basic_ios < _CharT, + _Traits + > + { + }; +template < typename _CharT, typename _Traits > class basic_iostream:public basic_istream < _CharT, _Traits >, public basic_ostream < _CharT, + _Traits + > + { + }; + class strstream:public basic_iostream < char > + { + virtual ~ strstream (); + }; + strstream::~strstream () + { + } +} |