blob: 76c0ebd5bed1c423c8fe83affcb2ad17db85b8fa [file] [log] [blame]
Howard Hinnant3e519522010-05-11 19:42:16 +00001//===----------------------------------------------------------------------===//
2//
Howard Hinnant5b08a8a2010-05-11 21:36:01 +00003// The LLVM Compiler Infrastructure
Howard Hinnant3e519522010-05-11 19:42:16 +00004//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10// <iosfwd>
11
12#include <iosfwd>
13#include <cwchar> // for mbstate_t
14
15int main()
16{
17 {
18 std::char_traits<char>* t1 = 0;
19 std::char_traits<wchar_t>* t2 = 0;
20 std::char_traits<unsigned short>* t3 = 0;
21 }
22 {
23 std::basic_ios<char>* t1 = 0;
24 std::basic_ios<wchar_t>* t2 = 0;
25 std::basic_ios<unsigned short>* t3 = 0;
26 }
27 {
28 std::basic_streambuf<char>* t1 = 0;
29 std::basic_streambuf<wchar_t>* t2 = 0;
30 std::basic_streambuf<unsigned short>* t3 = 0;
31 }
32 {
33 std::basic_istream<char>* t1 = 0;
34 std::basic_istream<wchar_t>* t2 = 0;
35 std::basic_istream<unsigned short>* t3 = 0;
36 }
37 {
38 std::basic_ostream<char>* t1 = 0;
39 std::basic_ostream<wchar_t>* t2 = 0;
40 std::basic_ostream<unsigned short>* t3 = 0;
41 }
42 {
43 std::basic_iostream<char>* t1 = 0;
44 std::basic_iostream<wchar_t>* t2 = 0;
45 std::basic_iostream<unsigned short>* t3 = 0;
46 }
47 {
48 std::basic_stringbuf<char>* t1 = 0;
49 std::basic_stringbuf<wchar_t>* t2 = 0;
50 std::basic_stringbuf<unsigned short>* t3 = 0;
51 }
52 {
53 std::basic_istringstream<char>* t1 = 0;
54 std::basic_istringstream<wchar_t>* t2 = 0;
55 std::basic_istringstream<unsigned short>* t3 = 0;
56 }
57 {
58 std::basic_ostringstream<char>* t1 = 0;
59 std::basic_ostringstream<wchar_t>* t2 = 0;
60 std::basic_ostringstream<unsigned short>* t3 = 0;
61 }
62 {
63 std::basic_stringstream<char>* t1 = 0;
64 std::basic_stringstream<wchar_t>* t2 = 0;
65 std::basic_stringstream<unsigned short>* t3 = 0;
66 }
67 {
68 std::basic_filebuf<char>* t1 = 0;
69 std::basic_filebuf<wchar_t>* t2 = 0;
70 std::basic_filebuf<unsigned short>* t3 = 0;
71 }
72 {
73 std::basic_ifstream<char>* t1 = 0;
74 std::basic_ifstream<wchar_t>* t2 = 0;
75 std::basic_ifstream<unsigned short>* t3 = 0;
76 }
77 {
78 std::basic_ofstream<char>* t1 = 0;
79 std::basic_ofstream<wchar_t>* t2 = 0;
80 std::basic_ofstream<unsigned short>* t3 = 0;
81 }
82 {
83 std::basic_fstream<char>* t1 = 0;
84 std::basic_fstream<wchar_t>* t2 = 0;
85 std::basic_fstream<unsigned short>* t3 = 0;
86 }
87 {
88 std::istreambuf_iterator<char>* t1 = 0;
89 std::istreambuf_iterator<wchar_t>* t2 = 0;
90 std::istreambuf_iterator<unsigned short>* t3 = 0;
91 }
92 {
93 std::ostreambuf_iterator<char>* t1 = 0;
94 std::ostreambuf_iterator<wchar_t>* t2 = 0;
95 std::ostreambuf_iterator<unsigned short>* t3 = 0;
96 }
97 {
98 std::ios* t1 = 0;
99 std::wios* t2 = 0;
100 }
101 {
102 std::streambuf* t1 = 0;
103 std::istream* t2 = 0;
104 std::ostream* t3 = 0;
105 std::iostream* t4 = 0;
106 }
107 {
108 std::stringbuf* t1 = 0;
109 std::istringstream* t2 = 0;
110 std::ostringstream* t3 = 0;
111 std::stringstream* t4 = 0;
112 }
113 {
114 std::filebuf* t1 = 0;
115 std::ifstream* t2 = 0;
116 std::ofstream* t3 = 0;
117 std::fstream* t4 = 0;
118 }
119 {
120 std::wstreambuf* t1 = 0;
121 std::wistream* t2 = 0;
122 std::wostream* t3 = 0;
123 std::wiostream* t4 = 0;
124 }
125 {
126 std::wstringbuf* t1 = 0;
127 std::wistringstream* t2 = 0;
128 std::wostringstream* t3 = 0;
129 std::wstringstream* t4 = 0;
130 }
131 {
132 std::wfilebuf* t1 = 0;
133 std::wifstream* t2 = 0;
134 std::wofstream* t3 = 0;
135 std::wfstream* t4 = 0;
136 }
137 {
138 std::fpos<std::mbstate_t>* t1 = 0;
139 std::streampos* t2 = 0;
140 std::wstreampos* t3 = 0;
141 }
142}