Upgrade tor to 0.2.0.28-rc (#3660)
[openwrt/svn-archive/archive.git] / libs / uclibc++ / patches / 008-integer_width.patch
1 Index: uClibc++-0.2.2/include/ostream
2 ===================================================================
3 --- uClibc++-0.2.2/include/ostream (revision 708)
4 +++ uClibc++-0.2.2/include/ostream (revision 709)
5 @@ -129,6 +129,18 @@
6 return *this;
7 }
8
9 + _UCXXEXPORT void printout(const char_type* s, streamsize n)
10 + {
11 + int extra = ios::width() - n;
12 + if ((ios::flags()&ios::adjustfield) == ios::right)
13 + while (extra-- > 0)
14 + put(ios::fill());
15 + write(s, n);
16 + if ((ios::flags()&ios::adjustfield) == ios::left)
17 + while (extra-- > 0)
18 + put(ios::fill());
19 + }
20 +
21 protected:
22 basic_ostream(const basic_ostream<charT,traits> &){ }
23 basic_ostream<charT,traits> & operator=(const basic_ostream<charT,traits> &){ return *this; }
24 @@ -142,15 +154,15 @@
25 sentry s(*this);
26 if( basic_ios<charT,traits>::flags() & ios_base::boolalpha){
27 if(n){
28 - write("true", 4);
29 + printout("true", 4);
30 }else{
31 - write("false", 5);
32 + printout("false", 5);
33 }
34 }else{
35 if(n){
36 - write("1", 1);
37 + printout("1", 1);
38 }else{
39 - write("0", 1);
40 + printout("0", 1);
41 }
42 }
43 if(basic_ios<charT,traits>::flags() & ios_base::unitbuf){
44 @@ -219,7 +231,7 @@
45 template <class charT, class traits> _UCXXEXPORT basic_ostream<charT,traits>& basic_ostream<charT, traits>::operator<<(void* p){
46 sentry s(*this);
47 char buffer[20];
48 - write(buffer, snprintf(buffer, 20, "%p", p) );
49 + printout(buffer, snprintf(buffer, 20, "%p", p) );
50 if(basic_ios<charT,traits>::flags() & ios_base::unitbuf){
51 flush();
52 }
53 @@ -356,7 +368,7 @@
54 operator<<(basic_ostream<charT,traits>& out, const charT* c)
55 {
56 typename basic_ostream<charT,traits>::sentry s(out);
57 - out.write(c, traits::length(c) );
58 + out.printout(c, traits::length(c) );
59 return out;
60 }
61
62 @@ -364,7 +376,7 @@
63 operator<<(basic_ostream<charT,traits>& out, const char* c)
64 {
65 typename basic_ostream<charT,traits>::sentry s(out);
66 - out.write(c, char_traits<char>::length(c) );
67 + out.printout(c, char_traits<char>::length(c) );
68 return out;
69 }
70
71 @@ -373,7 +385,7 @@
72 operator<<(basic_ostream<char,traits>& out, const char* c)
73 {
74 typename basic_ostream<char,traits>::sentry s(out);
75 - out.write(c, traits::length(c));
76 + out.printout(c, traits::length(c));
77 return out;
78 }
79
80 @@ -389,7 +401,7 @@
81 temp[i] = out.widen(c[i]);
82 }
83
84 - out.write(temp, numChars);
85 + out.printout(temp, numChars);
86 return out;
87 }
88 #endif
89 @@ -399,7 +411,7 @@
90 operator<<(basic_ostream<char,traits>& out, const signed char* c)
91 {
92 typename basic_ostream<char,traits>::sentry s(out);
93 - out.write(reinterpret_cast<const char *>(c), traits::length( reinterpret_cast<const char *>(c)));
94 + out.printout(reinterpret_cast<const char *>(c), traits::length( reinterpret_cast<const char *>(c)));
95 return out;
96 }
97
98 @@ -407,7 +419,7 @@
99 operator<<(basic_ostream<char,traits>& out, const unsigned char* c)
100 {
101 typename basic_ostream<char,traits>::sentry s(out);
102 - out.write(reinterpret_cast<const char *>(c), traits::length( reinterpret_cast<const char *>(c)));
103 + out.printout(reinterpret_cast<const char *>(c), traits::length( reinterpret_cast<const char *>(c)));
104 return out;
105 }
106
107 Index: uClibc++-0.2.2/include/ostream_helpers
108 ===================================================================
109 --- uClibc++-0.2.2/include/ostream_helpers (revision 708)
110 +++ uClibc++-0.2.2/include/ostream_helpers (revision 709)
111 @@ -88,7 +88,7 @@
112 }
113 }
114
115 - stream.write(buffer, snprintf(buffer, 20, formatString, n) );
116 + stream.printout(buffer, snprintf(buffer, 20, formatString, n) );
117
118 if(stream.flags() & ios_base::unitbuf){
119 stream.flush();
120 @@ -135,7 +135,7 @@
121 }
122 }
123
124 - stream.write(buffer, snprintf(buffer, 20, formatString, n));
125 + stream.printout(buffer, snprintf(buffer, 20, formatString, n));
126 if(stream.flags() & ios_base::unitbuf){
127 stream.flush();
128 }
129 @@ -182,7 +182,7 @@
130 }
131 }
132
133 - stream.write(buffer, snprintf(buffer, 27, formatString, n) );
134 + stream.printout(buffer, snprintf(buffer, 27, formatString, n) );
135
136 if(stream.flags() & ios_base::unitbuf){
137 stream.flush();
138 @@ -228,7 +228,7 @@
139 }
140 }
141
142 - stream.write(buffer, snprintf(buffer, 27, formatString, n) );
143 + stream.printout(buffer, snprintf(buffer, 27, formatString, n) );
144
145 if(stream.flags() & ios_base::unitbuf){
146 stream.flush();
147 @@ -256,7 +256,7 @@
148 } else {
149 length = snprintf(buffer, 32, "%*.*g",static_cast<int>(stream.width()),static_cast<int>(stream.precision()), f);
150 }
151 - stream.write(buffer, length);
152 + stream.printout(buffer, length);
153 if(stream.flags() & ios_base::unitbuf){
154 stream.flush();
155 }
156 @@ -280,7 +280,7 @@
157 } else {
158 length = snprintf(buffer, 32, "%*.*Lg", static_cast<int>(stream.width()), static_cast<int>(stream.precision()), f);
159 }
160 - stream.write(buffer, length);
161 + stream.printout(buffer, length);
162 if(stream.flags() & ios_base::unitbuf){
163 stream.flush();
164 }
165 @@ -295,25 +295,25 @@
166 {
167 wchar_t buffer[20];
168 if( stream.flags() & ios_base::dec){
169 - stream.write(buffer, swprintf(buffer, 20, L"%ld", n));
170 + stream.printout(buffer, swprintf(buffer, 20, L"%ld", n));
171 }else if( stream.flags() & ios_base::oct){
172 if( stream.flags() & ios_base::showbase){
173 - stream.write(buffer, swprintf(buffer, 20, L"%#lo", n));
174 + stream.printout(buffer, swprintf(buffer, 20, L"%#lo", n));
175 }else{
176 - stream.write(buffer, swprintf(buffer, 20, L"%lo", n) );
177 + stream.printout(buffer, swprintf(buffer, 20, L"%lo", n) );
178 }
179 }else if (stream.flags() & ios_base::hex){
180 if(stream.flags() & ios_base::showbase){
181 if(stream.flags() & ios_base::uppercase){
182 - stream.write(buffer, swprintf(buffer, 20, L"%#lX", n) );
183 + stream.printout(buffer, swprintf(buffer, 20, L"%#lX", n) );
184 }else{
185 - stream.write(buffer, swprintf(buffer, 20, L"%#lx", n) );
186 + stream.printout(buffer, swprintf(buffer, 20, L"%#lx", n) );
187 }
188 }else{
189 if(stream.flags() & ios_base::uppercase){
190 - stream.write(buffer, swprintf(buffer, 20, L"%lX", n) );
191 + stream.printout(buffer, swprintf(buffer, 20, L"%lX", n) );
192 }else{
193 - stream.write(buffer, swprintf(buffer, 20, L"%lx", n) );
194 + stream.printout(buffer, swprintf(buffer, 20, L"%lx", n) );
195 }
196 }
197 }
198 @@ -329,25 +329,25 @@
199 {
200 wchar_t buffer[20];
201 if( stream.flags() & ios_base::dec){
202 - stream.write(buffer, swprintf(buffer, 20, L"%lu", n));
203 + stream.printout(buffer, swprintf(buffer, 20, L"%lu", n));
204 }else if( stream.flags() & ios_base::oct){
205 if( stream.flags() & ios_base::showbase){
206 - stream.write(buffer, swprintf(buffer, 20, L"%#lo", n));
207 + stream.printout(buffer, swprintf(buffer, 20, L"%#lo", n));
208 }else{
209 - stream.write(buffer, swprintf(buffer, 20, L"%lo", n) );
210 + stream.printout(buffer, swprintf(buffer, 20, L"%lo", n) );
211 }
212 }else if (stream.flags() & ios_base::hex){
213 if(stream.flags() & ios_base::showbase){
214 if(stream.flags() & ios_base::uppercase){
215 - stream.write(buffer, swprintf(buffer, 20, L"%#lX", n) );
216 + stream.printout(buffer, swprintf(buffer, 20, L"%#lX", n) );
217 }else{
218 - stream.write(buffer, swprintf(buffer, 20, L"%#lx", n) );
219 + stream.printout(buffer, swprintf(buffer, 20, L"%#lx", n) );
220 }
221 }else{
222 if(stream.flags() & ios_base::uppercase){
223 - stream.write(buffer, swprintf(buffer, 20, L"%lX", n) );
224 + stream.printout(buffer, swprintf(buffer, 20, L"%lX", n) );
225 }else{
226 - stream.write(buffer, swprintf(buffer, 20, L"%lx", n) );
227 + stream.printout(buffer, swprintf(buffer, 20, L"%lx", n) );
228 }
229 }
230 }
231 @@ -365,25 +365,25 @@
232 {
233 wchar_t buffer[28];
234 if( stream.flags() & ios_base::dec){
235 - stream.write(buffer, swprintf(buffer, 27, L"%lld", n));
236 + stream.printout(buffer, swprintf(buffer, 27, L"%lld", n));
237 }else if( stream.flags() & ios_base::oct){
238 if( stream.flags() & ios_base::showbase){
239 - stream.write(buffer, swprintf(buffer, 27, L"%#llo", n));
240 + stream.printout(buffer, swprintf(buffer, 27, L"%#llo", n));
241 }else{
242 - stream.write(buffer, swprintf(buffer, 27, L"%llo", n) );
243 + stream.printout(buffer, swprintf(buffer, 27, L"%llo", n) );
244 }
245 }else if (stream.flags() & ios_base::hex){
246 if(stream.flags() & ios_base::showbase){
247 if(stream.flags() & ios_base::uppercase){
248 - stream.write(buffer, swprintf(buffer, 27, L"%#llX", n) );
249 + stream.printout(buffer, swprintf(buffer, 27, L"%#llX", n) );
250 }else{
251 - stream.write(buffer, swprintf(buffer, 27, L"%#llx", n) );
252 + stream.printout(buffer, swprintf(buffer, 27, L"%#llx", n) );
253 }
254 }else{
255 if(stream.flags() & ios_base::uppercase){
256 - stream.write(buffer, swprintf(buffer, 27, L"%llX", n) );
257 + stream.printout(buffer, swprintf(buffer, 27, L"%llX", n) );
258 }else{
259 - stream.write(buffer, swprintf(buffer, 27, L"%llx", n) );
260 + stream.printout(buffer, swprintf(buffer, 27, L"%llx", n) );
261 }
262 }
263 }
264 @@ -399,25 +399,25 @@
265 {
266 wchar_t buffer[28];
267 if( stream.flags() & ios_base::dec){
268 - stream.write(buffer, swprintf(buffer, 27, L"%llu", n));
269 + stream.printout(buffer, swprintf(buffer, 27, L"%llu", n));
270 }else if( stream.flags() & ios_base::oct){
271 if( stream.flags() & ios_base::showbase){
272 - stream.write(buffer, swprintf(buffer, 27, L"%#llo", n));
273 + stream.printout(buffer, swprintf(buffer, 27, L"%#llo", n));
274 }else{
275 - stream.write(buffer, swprintf(buffer, 27, L"%llo", n) );
276 + stream.printout(buffer, swprintf(buffer, 27, L"%llo", n) );
277 }
278 }else if (stream.flags() & ios_base::hex){
279 if(stream.flags() & ios_base::showbase){
280 if(stream.flags() & ios_base::uppercase){
281 - stream.write(buffer, swprintf(buffer, 27, L"%#llX", n) );
282 + stream.printout(buffer, swprintf(buffer, 27, L"%#llX", n) );
283 }else{
284 - stream.write(buffer, swprintf(buffer, 27, L"%#llx", n) );
285 + stream.printout(buffer, swprintf(buffer, 27, L"%#llx", n) );
286 }
287 }else{
288 if(stream.flags() & ios_base::uppercase){
289 - stream.write(buffer, swprintf(buffer, 27, L"%llX", n) );
290 + stream.printout(buffer, swprintf(buffer, 27, L"%llX", n) );
291 }else{
292 - stream.write(buffer, swprintf(buffer, 27, L"%llx", n) );
293 + stream.printout(buffer, swprintf(buffer, 27, L"%llx", n) );
294 }
295 }
296 }
297 @@ -447,7 +447,7 @@
298 } else {
299 swprintf(format_string, 32, L"%%%u.%ug", static_cast<int>(stream.width()), static_cast<unsigned int>(stream.precision()));
300 }
301 - stream.write(buffer, swprintf(buffer, 32, format_string, f) );
302 + stream.printout(buffer, swprintf(buffer, 32, format_string, f) );
303 if(stream.flags() & ios_base::unitbuf){
304 stream.flush();
305 }
306 @@ -471,7 +471,7 @@
307 } else {
308 swprintf(format_string, 32, L"%%%u.%uLg", static_cast<unsigned int>(stream.width()), static_cast<unsigned int>(stream.precision()));
309 }
310 - stream.write(buffer, swprintf(buffer, 32, format_string, f) );
311 + stream.printout(buffer, swprintf(buffer, 32, format_string, f) );
312 if(stream.flags() & ios_base::unitbuf){
313 stream.flush();
314 }