summaryrefslogtreecommitdiff
path: root/libstdc++-v3/testsuite/27_io/headers/iosfwd/synopsis.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libstdc++-v3/testsuite/27_io/headers/iosfwd/synopsis.cc')
-rw-r--r--libstdc++-v3/testsuite/27_io/headers/iosfwd/synopsis.cc119
1 files changed, 119 insertions, 0 deletions
diff --git a/libstdc++-v3/testsuite/27_io/headers/iosfwd/synopsis.cc b/libstdc++-v3/testsuite/27_io/headers/iosfwd/synopsis.cc
new file mode 100644
index 00000000000..48f733bf28a
--- /dev/null
+++ b/libstdc++-v3/testsuite/27_io/headers/iosfwd/synopsis.cc
@@ -0,0 +1,119 @@
+// { dg-do compile }
+
+#include <iosfwd>
+
+namespace std
+{
+ // [iosfwd.syn]
+
+ template<class charT> struct char_traits;
+ template<> struct char_traits<char>;
+#if __cplusplus >= 202002L
+ template<> struct char_traits<char8_t>;
+#endif
+#if __cplusplus >= 201103L
+ template<> struct char_traits<char16_t>;
+ template<> struct char_traits<char32_t>;
+#endif
+ template<> struct char_traits<wchar_t>;
+
+ template<class T> class allocator;
+
+ template<class charT, class traits>
+ class basic_ios;
+ template<class charT, class traits>
+ class basic_streambuf;
+ template<class charT, class traits>
+ class basic_istream;
+ template<class charT, class traits>
+ class basic_ostream;
+ template<class charT, class traits>
+ class basic_iostream;
+
+_GLIBCXX_BEGIN_NAMESPACE_CXX11
+ template<class charT, class traits, class Allocator>
+ class basic_stringbuf;
+ template<class charT, class traits, class Allocator>
+ class basic_istringstream;
+ template<class charT, class traits, class Allocator>
+ class basic_ostringstream;
+ template<class charT, class traits, class Allocator>
+ class basic_stringstream;
+_GLIBCXX_END_NAMESPACE_CXX11
+
+ template<class charT, class traits>
+ class basic_filebuf;
+ template<class charT, class traits>
+ class basic_ifstream;
+ template<class charT, class traits>
+ class basic_ofstream;
+ template<class charT, class traits>
+ class basic_fstream;
+
+#if __cplusplus >= 202002L && _GLIBCXX_USE_CXX11_ABI
+ template<class charT, class traits, class Allocator>
+ class basic_syncbuf;
+ template<class charT, class traits, class Allocator>
+ class basic_osyncstream;
+#endif
+
+ template<class charT, class traits>
+ class istreambuf_iterator;
+ template<class charT, class traits>
+ class ostreambuf_iterator;
+
+ typedef basic_ios<char> ios;
+ typedef basic_ios<wchar_t> wios;
+
+ typedef basic_streambuf<char> streambuf;
+ typedef basic_istream<char> istream;
+ typedef basic_ostream<char> ostream;
+ typedef basic_iostream<char> iostream;
+
+ typedef basic_stringbuf<char> stringbuf;
+ typedef basic_istringstream<char> istringstream;
+ typedef basic_ostringstream<char> ostringstream;
+ typedef basic_stringstream<char> stringstream;
+
+
+ typedef basic_filebuf<char> filebuf;
+ typedef basic_ifstream<char> ifstream;
+ typedef basic_ofstream<char> ofstream;
+ typedef basic_fstream<char> fstream;
+
+#if __cplusplus >= 202002L && _GLIBCXX_USE_CXX11_ABI
+ typedef basic_syncbuf<char> syncbuf;
+ typedef basic_osyncstream<char> osyncstream;
+#endif
+
+ typedef basic_streambuf<wchar_t> wstreambuf;
+ typedef basic_istream<wchar_t> wistream;
+ typedef basic_ostream<wchar_t> wostream;
+ typedef basic_iostream<wchar_t> wiostream;
+
+ typedef basic_stringbuf<wchar_t> wstringbuf;
+ typedef basic_istringstream<wchar_t> wistringstream;
+ typedef basic_ostringstream<wchar_t> wostringstream;
+ typedef basic_stringstream<wchar_t> wstringstream;
+
+ typedef basic_filebuf<wchar_t> wfilebuf;
+ typedef basic_ifstream<wchar_t> wifstream;
+ typedef basic_ofstream<wchar_t> wofstream;
+ typedef basic_fstream<wchar_t> wfstream;
+
+#if __cplusplus >= 202002L
+ typedef basic_syncbuf<wchar_t> wsyncbuf;
+ typedef basic_osyncstream<wchar_t> wosyncstream;
+#endif
+
+ template<class state> class fpos;
+ typedef fpos<std::mbstate_t> streampos;
+ typedef fpos<std::mbstate_t> wstreampos;
+#if __cplusplus >= 202002L
+ typedef fpos<std::mbstate_t> u8streampos;
+#endif
+#if __cplusplus >= 201103L
+ typedef fpos<std::mbstate_t> u16streampos;
+ typedef fpos<std::mbstate_t> u32streampos;
+#endif
+}