summaryrefslogtreecommitdiff
path: root/ecos/packages/language/c/libc/stdio/current/ChangeLog
blob: 237c1145f2545370870c4f222de8705062503621 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
2012-02-19  Sergei Gavrikov  <sergei.gavrikov@gmail.com>

	* src/common/vsnprintf.c: If string truncated (C99 case), apply the
	null termination in correct place.
	* tests/sprintf2.c: Fix checks for return values if C99 implementation
	snprintf() used.

2009-08-20  Uwe Kindler  <uwe_kindler@web.de>

	* cdl/stdio.cdl Added option CYGIMP_LIBC_STDIO_C99_SNPRINTF
	for activation of C99 compliant snprintf() return value.
	* src/output/vfnprintf.cxx: Added optional C99 compliant return
	value calculation.
	* tests/snprintf.c: New test for snprintf including C99
	implementation.

2009-08-07  Jonathan Larmour  <jifl@eCosCentric.com>

	* src/common/vsnprintf.cxx (class Cyg_VsnprintfStream):
	Remove destructor.
	(vsnprintf): Apply null terminator correctly when truncated.

2009-02-16  Lars Povlsen  <lpovlsen@vitesse.com>

	* include/stdio.h: Removed extra semicolon after scanf()
	prototype.

2009-01-18  Jonathan Larmour  <jifl@eCosCentric.com>

	* src/common/fflush.cxx (cyg_libc_stdio_flush_all_but): Fix silly
	typo in last change.

2009-01-15  Jonathan Larmour  <jifl@eCosCentric.com>

	* src/common/fflush.cxx (cyg_libc_stdio_flush_all_but): Ensure the
	files table can't change. Thanks to Xiaochen Zhou for the detective
	work.

2008-07-21  Guenter Ebermann  <guenter.ebermann@gmx.at>

	* src/common/fclose.cxx (fclose): Replace config-dependent use of
	delete with free(), as the memory had been allocated with malloc.

2007-07-02  Gary Thomas  <gary@mlbassoc.com>

	* src/output/vfnprintf.cxx: Add (char *) casts to make GCC/4.2.x happy.

2007-02-05  Sergei Organov  <osv@javad.com>

	* src/output/vfnprintf.cxx (vfnprintf): while formatting integers
	in decimal, convert the value to unsigned long from unsigned long
	long before processing, unless we actually print long long
	argument. This tremendously speeds-up the formatting.

2007-01-16  Sergei Organov  <osv@javad.com>

	Speed-up [v]s[n]printf() functions by a factor of about 2+. In
	particular, sprintf(s, "%s", "") becomes faster 2.8 times,
	printing of every character -- 1.7 times, and, as a result, e.g.,
	printing of a string of length 50 -- 2.2 times.

	* include/stream.hxx (class Cyg_OutputStream): New ABC.
	(class Cyg_StdioStream): inherit from Cyg_OutputStream; make
	the destructor, write(), and get_error() virtual.
	
	* src/output/vfnprintf.cxx (vfnprintf): Use ABC Cyg_OutputStream
	instead of Cyg_StdioStream.

	* src/common/vsnprintf.cxx (class Cyg_VsnprintfStream): New class
	that specializes Cyg_OutputStream for output to a string.
	(vsnprintf): Use Cyg_VsnprintfStream for printing to a string.

2006-12-22  Sergei Organov  <osv@javad.com>

	* src/output/vfnprintf.cxx (vfnprintf): Speed-up formatting of
	decimal integers by replacing modulo operation with multiply and
	subtract.

2006-09-27  Jonathan Larmour  <jifl@eCosCentric.com>

	* include/stdio.h: Make fpos_t be signed to allow negative
	SEEK_CUR offsets to fseek().
	* include/stream.inl (set_position): If SEEK_CUR, then if
	having to reconcile difference between position and underlying
	file position, then requested seek position needs adjusting
	for buffer size.
	Both above reported and analysed by Ivan Djelic.

2006-09-26  Jonathan Larmour  <jifl@eCosCentric.com>

	* src/common/stream.cxx (read): Only update position after direct
	reads from I/O system so it's updated by the correct number of
	bytes.
	(write): Reset underlying file position if there had been
	stuff read from the file left in the buffer so the file positions
	are inconsistent.

2005-07-22  Andrew Lunn  <andrew.lunn@ascom.ch>

	* src/common/fopen.cxx (fopen): Default the open mode to Read
	until we have process the flags. Initialize the dev handle. These
	keep the compiler happy.

2005-04-11  Jonathan Larmour  <jifl@eCosCentric.com>

	* src/common/stream.cxx (read): don't reference flags.buffering
	when configured by CDL to be unbuffered.

2005-03-27  Andrew Lunn  <andrew.lunn@ascom.ch>

	* include/stdio.h: Added CYGBLD_ATTRIB_{PRINTF|SCANF}_FORMAT where
	appropriate so the compiler does more checking.

2004-12-08  Daniel Neri  <daniel.neri@sigicom.se>

	* cdl/stdio.cdl (CYGPKG_LIBC_STDIO_FILEIO): The FILEIO variant of
	vsnprintf breaks if CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF is disabled.
	
2004-09-27  Jonathan Larmour  <jifl@eCosCentric.com>

	* cdl/stdio.cdl (CYGFUN_LIBC_STDIO_OPEN_POSIX_FDFUNCS): New option,
	to control whether or not fdopen()/fileno() are implemented.
	Only build fopen/fclose if CYGPKG_LIBC_STDIO_OPEN.

	* src/common/fclose.cxx: Can remove ifdef CYGPKG_LIBC_STDIO_OPEN since
	file now isn't even built if not.
	* src/common/fopen.cxx: Ditto. Also condition on
	CYGFUN_LIBC_STDIO_OPEN_POSIX_FDFUNCS so decision is centralised in CDL.

2004-08-18  Jonathan Larmour  <jifl@eCosCentric.com>

	* cdl/stdio.cdl (CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE): Only use
	CYGDAT_IO_SERIAL_TTY_CONSOLE if set.

2004-08-18  Fredrik Hederstierna  <fredrik@wespot.com>
2004-08-18  Jonathan Larmour  <jifl@eCosCentric.com>

	* src/input/vfscanf.cxx (vfscanf): Add long long and long double
	support.
	* cdl/stdio.cdl (CYGFUN_LIBC_STDIO_LONGLONG): Make it a new option.

2004-08-16  Oyvind Harboe <oyvind.harboe@zylin.com>

	* src/common/stream.cxx (read): fixed performance problem with
	unbuffered reads. Long unbuffered i/o read requests would cause
	one roundtrip to the underlying file system for each byte, instead
	of a single trip as intended.

2004-03-29  Kelvin Lawson <klawson@ad-holdings.co.uk>

	* src/common/fopen.cxx:
	* src/common/stream.cxx:
	* include/io.inl:
	* include/stream.hxx:
	Split CYGSTREAM_READWRITE into CYGSTREAM_READWRITE_CREATE and
	CYGSTREAM_READWRITE_NOCREATE. This fixes fopen() with mode 'w+'
	which previously did not allow file creation.

2004-03-27  Andrew Lunn  <andrew.lunn@ascom.ch>

	* include/stream.inl (set_position): Flush the output buffer
	before seeking the underlying file otherwise the writes ends up in
	the wrong location in the file.
	
2004-03-15  Jonathan Larmour  <jifl@eCosCentric.com>

	* src/common/fileops.cxx (tmpnam): Only close if open() succeded.

2004-03-12  Jonathan Larmour  <jifl@eCosCentric.com>

	* src/input/vfscanf.cxx (vfscanf): Silence warning.

	* include/stdio.h:
	Add file operation functions which weren't here before!
	While I'm here, add __THROW everywhere and use __externC not externC.

	* cdl/stdio.cdl:  We implement stdio fileops in isoinfra now.
	Also set header for that.
	Build fileops.cxx.
	L_tmpnam must be at least 4.
	TMP_MAX must be at least 1, and ISO C says it should be >=25.
	Add description for CYGPKG_LIBC_STDIO_FILEIO and move up from
	bottom so it goes with others.

	* src/common/fileops.cxx: New file. Implements rename(), remove(),
	tmpnam() and tmpfile().

	* src/common/fclose.cxx: Add throw specifiers to match stdio.h.
	* src/common/feof.cxx: Ditto.
	* src/common/fflush.cxx: Ditto.
	* src/common/fopen.cxx: Ditto.
	* src/common/freopen.cxx: Ditto.
	* src/common/fseek.cxx: Ditto.
	* src/common/setvbuf.cxx: Ditto.
	* src/common/snprintf.cxx: Ditto.
	* src/common/sprintf.cxx: Ditto.
	* src/common/sscanf.cxx: Ditto.
	* src/common/stdioinlines.cxx: Ditto.
	* src/common/ungetc.cxx: Ditto.
	* src/common/vsnprintf.cxx: Ditto.
	* src/common/vsscanf.cxx: Ditto.
	* src/input/fgetc.cxx: Ditto.
	* src/input/fgets.cxx: Ditto.
	* src/input/fread.cxx: Ditto.
	* src/input/fscanf.cxx: Ditto.
	* src/input/gets.cxx: Ditto.
	* src/input/scanf.cxx: Ditto.
	* src/input/vfscanf.cxx: Ditto.
	* src/output/fnprintf.cxx: Ditto.
	* src/output/fprintf.cxx: Ditto.
	* src/output/fputc.cxx: Ditto.
	* src/output/fputs.cxx: Ditto.
	* src/output/fwrite.cxx: Ditto.
	* src/output/printf.cxx: Ditto.
	* src/output/vfnprintf.cxx: Ditto.
	
2004-02-17  Jonathan Larmour  <jifl@eCosCentric.com>

	* cdl/stdio.cdl (CYGSEM_LIBC_STDIO_THREAD_SAFE_STREAMS): Can
	be inactive when no kernel.
	* cdl/stdio.cdl: Implements file positioning functions in isoinfra.

2003-09-03  Thomas Koeller <thomas.koeller@baslerweb.com>

	* cdl/stdio.cdl: only require "/dev/haldiag" if actually using it.

2003-08-12  Scott Wilkinson <scott@alliantnetworks.com>
	
	* src/common/fclose.cxx (fclose): fclose would seg-fault if passed
        NULL FILE pointer.  Now returns error.  Also cleaned up some exit
        paths to call Cyg_libc_stdio_files::unlock()

        * src/common/fopen.cxx (fopen): Cleaned up some exit paths to call
        Cyg_libc_stdio_files::unlock()

2003-06-10  Andrew Lunn  <andrew.lunn@ascom.ch>
	    Knud Wöhler  <woehler@ossi.fho-emden.de>    
	
	* src/output/vfnprintf.cxx (SARG): Cast size_t to long. This seems
	to stop gcc from producing wrong code for the plain int clause. The 
	wrong code causes negative numbers to be printed as positive because
	the sign extend from 32 bits to 64 bits is wrong.

2003-03-06  Gary Thomas  <gary@mlbassoc.com>

	* src/input/fread.cxx (fread): Simple EOF should not set error.

	* tests/fileio.c: New file.
	* cdl/stdio.cdl: Add new file I/O tests.

2003-02-24  Jonathan Larmour  <jifl@eCosCentric.com>

	* cdl/stdio.cdl: Fix doc link.

2003-02-15  Fabrice Gautier  <Fabrice_Gautier@sdesigns.com>

	* include/stdio.inl (setbuf): Don't supply size with _IONBF.
	* src/common/stdioinlines.cxx (setbuf): Ditto.

2003-01-29  Jonathan Larmour  <jifl@eCosCentric.com>

	* src/output/vfnprintf.cxx: Add support for C99 'z' flag (size_t).

2002-09-02  Andrew Lunn  <andrew.lunn@ascom.ch>

	* include/stream.inl (set_position): Fixed typo in none buffered
	case. Seek pos bytes, not whence bytes.

2002-05-17  Martin Buck  <martin.buck@ascom.ch>
 
 	* include/stdio.h (fnprintf): Added printf-format-checking using
 	CYGBLD_ATTRIB_PRINTF_FORMAT, since gcc does it automatically only for
 	ISO C90 functions.
 	(snprintf) Likewise.
 
2002-04-24  Yoshinori Sato  <qzb04471@nifty.ne.jp>

	* include/streambuf.inl (Cyg_StdioStreamBuffer constructor): 
	Don't set default args in func definition.
	(set_buffer): Ditto.

2002-04-05  Jonathan Larmour  <jlarmour@redhat.com>

	* src/input/fgetc.cxx (fgetc): Silence conversion warning.

2002-04-04  Jonathan Larmour  <jlarmour@redhat.com>

	* src/common/fopen.cxx (fopen_inner): Allocate memory using malloc and
	placement new, not default new.

	* src/input/fgetc.cxx (fgetc): Don't set error on true EOF.

2002-04-04  Jurica Baricevic  <jura@INTESIS.hr>

	* src/common/fclose.cxx (fclose): Use delete if we can.

2002-02-06  Jonathan Larmour  <jlarmour@redhat.com>

	* src/input/fread.cxx (fread): when looping read into ptrc, not ptr!

2002-01-25  Jonathan Larmour  <jlarmour@redhat.com>

	* include/stream.inl (set_position): Fix the seek backwards case again.
	Doh!

2002-01-24  Jonathan Larmour  <jlarmour@redhat.com>

	* include/stream.inl (set_position): Fix the posdiff == 0 case.

2002-01-24  Jesper Skov  <jskov@redhat.com>

	* include/stream.inl (set_position): Check that posdiff is >0
	before taking the code path that assumes so.

2002-01-17  Jonathan Larmour  <jlarmour@redhat.com>

	* include/stream.inl (set_position): Use an off_t for bytesavail to
	prevent warnings.

2001-12-05  Jonathan Larmour  <jlarmour@redhat.com>

	* src/common/fflush.cxx (cyg_libc_stdio_flush_all_but): Fix starvation
	problem when waiting for threads to unlock of lower priority.
	Fix for bug #57014.

2001-11-23  Jonathan Larmour  <jlarmour@redhat.com>

	* cdl/stdio.cdl: Add dependency on stdlib string conversion functions
	for *scanf.

2001-08-10  Robin Farine  <robin.farine@terminus.org>

        * src/output/vfnprintf.cxx (cvt): Handles the cases of finite,
        NaN and infinite numbers separately.

	* src/common/stream.cxx (read): Read correct number of bytes when
	a character has been "ungot".

2001-08-03  Jonathan Larmour  <jlarmour@redhat.com>

	* include/streambuf.inl (~Cyg_StdioStreamBuffer): use correct configury
	to decide when to call free.

2001-07-27  Jesper Skov  <jskov@redhat.com>

	* src/common/fflush.cxx (cyg_libc_stdio_flush_all_but): The check
	for last operation being a read is only valid in buffered IO mode.

2001-07-20  Jonathan Larmour  <jlarmour@redhat.com>

	* include/stream.inl (set_position): Take read buffer into account
	when seeking. Thanks to jjtsai <jjtsai@itri.org.tw> for the
	help.

2001-07-12  Jonathan Larmour  <jlarmour@redhat.com>

	* src/common/fflush.cxx (cyg_libc_stdio_flush_all_but): Don't
	flush a stream that was last used for reading - it doesn't need it.
	* include/stream.hxx: cyg_libc_stdio_flush_all_but needs to be a
	friend of class Cyg_StdioStream to do the above.

2001-06-18  Jonathan Larmour  <jlarmour@redhat.com>

	* src/input/fread.cxx (fread): Fix compilation problem with below
	change.

2001-06-15  Rob Jansen  <rwjansen@planet.nl>

	* src/input/fread.cxx (fread): Changed to read the requested amount
	of data items instead of stopping on CYG_LIBC_STDIO_BUFSIZE boundaries.

2001-06-08  Jeff Johnston  <jjohnstn@redhat.com>

	* src/input/vfscanf.cxx (vfscanf)[CYGINT_LIBC_I18N_MB_REQUIRED]: Added
	call to mbtowc_fn for current locale to process format string.
	Also added variable definitions needed in this circumstance.
	* src/output/vfnprintf.cxx (vfnprintf)[CYGINT_LIBC_I18N_MB_REQUIRED]: Ditto.
	(vfnprintf): Changed non-multibyte path to simply use the current
	character rather than call the C mbtowc function since only
	single byte characters would be possible. 

2001-03-19  Jonathan Larmour  <jlarmour@redhat.com>

	* src/common/stream.cxx (refill_read_buffer): Flush all streams here...
	(read): ...rather than here, or...
	(read_byte): ...here.
	This means less flushing, which improves performance.

	* src/input/fgets.cxx: Add a reminder comment to improve this later.
	* src/input/gets.cxx: Ditto.


2001-03-16  Jonathan Larmour  <jlarmour@redhat.com>

	* include/stream.hxx (class Cyg_StdioStream): Improve member visibility.

	* src/common/stream.cxx (refill_read_buffer): Ensure eof is set.
	* src/common/feof.cxx: New file. Implements the long lost
	feof(), ferror() and clearerr() functions which were MIA for
	no good reason.
	* cdl/stdio.cdl: Build it.

2001-03-15  Jonathan Larmour  <jlarmour@redhat.com>

	* cdl/stdio.cdl (CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE): Default to
	tty default console.

	* src/input/fgets.cxx (fgets): Reimplement to work with EOF properly.
	Add tracing.
	* src/input/gets.cxx (gets): Ditto.

	* include/io.hxx, include/io.inl, include/stream.hxx,
	include/stream.inl, include/streambuf.hxx, include/streambuf.inl:
	Silence warnings from recent compilers.

2001-02-01  Jonathan Larmour  <jlarmour@redhat.com>

	* cdl/stdio.cdl (CYGPKG_LIBC_STDIO_OPEN): Implements
	CYGINT_ISO_STDIO_POSIX_FDFUNCS ( fileno() and fdopen() ).

2000-11-01  Jonathan Larmour  <jlarmour@redhat.com>

	* include/stdio.h: Make FILE array type larger to be more resistant
	against small data sections.
	Lose the cyg_libc_stdio_stdin/out/err definitions with macros for
	stdin/stdout/err since it can cause problems with libgcc exception
	code. Instead just make these extern FILE *s.
	* src/common/stderr.cxx:
	* src/common/stdin.cxx:
	* src/common/stdout.cxx:
	Define objects with init priority corresponding to order the fd's
	should be allocated where applicable.
	Define actual stdin, stdout, stderr externally visible constants to
	point to the streams.

	* cdl/stdio.cdl: Support CYGINT_ISO_STDIO_STREAMS interface

	* src/common/fopen.cxx (fdopen): return f as intended

2000-10-23  Jesper Skov  <jskov@redhat.com>

	* include/streambuf.inl: Adjust assertions to cope with buffers
	generated by sprintf and similar non-bound-buffer calls.

2000-08-09  Jonathan Larmour  <jlarmour@redhat.co.uk>

	* include/io.inl: No need to include string.h

	* cdl/stdio.cdl: Add some more requires statements

2000-08-07  Jonathan Larmour  <jlarmour@redhat.co.uk>

	* src/common/stream.cxx (Cyg_StdioStream::Cyg_StdioStream):
	Only call io_buf members conditionally.

2000-08-03  Jonathan Larmour  <jlarmour@redhat.co.uk>

	* src/common/fseek.cxx: Include assertion and tracing support since
	they are used.

2000-07-20  Nick Garnett  <nickg@cygnus.co.uk>

	* include/stream.hxx (class Cyg_StdioStream): Added get_dev()
	accessor member function to return underlying device handle.

	* src/common/fopen.cxx: Added fdopen() and fileno(). Reorganized
	fopen() so that code common with fdopen() is now in a separate
	function.

	* src/common/stdiosupp.cxx (Cyg_libc_stdio_find_filename): Removed
	compiler warning.

2000-07-13  Nick Garnett  <nickg@cygnus.co.uk>

	* cdl/stdio.cdl: Added common/fseek.cxx to compile list.
	Reorganized options for stream buffering:
	CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF now controls whether the user
	can attach their own buffer to the stream.
	CYGSEM_LIBC_STDIO_SETVBUF_MALLOC controls whether buffers can be
	malloced or only statically defined.
	Added CYGPKG_LIBC_STDIO_FILEIO option to control whether the STDIO
	package uses the FILEIO package for all IO, or goes directly to
	the device drivers as before.

	* include/stdio.h: Added file positioning calls defined in section
	7.9.9 of the standard.

	* include/io.hxx: 
	* include/io.inl:
	Added these files to define an abstraction layer for access to the
	real device underlying an IO stream. Depending on
	CYGPKG_LIBC_STDIO_FILEIO this either goes to the FILEIO package or
	directly to the device drivers.
	
	* include/stream.hxx:
	Modifications to use io.hxx abstractions.
	Added second constructor for creating a buffer-only stream.
	Added initialize() function which contains most of the common
	stream initialization code.
	Added a close() member function.

	* include/stream.inl:
	Modifications to use io.hxx abstractions.
	Moved most of the work of the destructor into close() member.
	Added FILEIO version of set_position() member function.
	
	* include/streambuf.hxx:
	* include/streambuf.inl:
	* src/common/streambuf.cxx: 
	Rearranged to match new buffering configuration options.

	* src/common/stream.cxx:
	Modifications to use io.hxx abstractions.
	Added second constructor, and moved common initialization code to
	initialize() member function.
	Added code to make position member correctly track current file
	position.

	* src/common/fopen.cxx:
	Fixed handling of write/append in process_mode().
	Moved call of process_mode() to before call to cyg_stdio_open() so
	that stream modes may be passed in.
	Added code to detect an interactive stream and choose non-buffered
	mode - fully buffered is now the default.
	Added calls to cyg_stdio_close() where appropriate.

	* src/output/vfnprintf.cxx: Removed FLUSH() macro and its
	uses. Deciding to flush should be in the hands of the buffer code,
	or the user calling fflush().

	* src/common/vsscanf.cxx:
	Added FILEIO variant of vsscanf(). This uses a precharged stream
	object to emulate input.

	* src/common/vsnprintf.cxx: 
	Added FILEIO variant of vsnprintf(). This uses the standard stream
	object to print into the supplied buffer.
	
	* src/common/fseek.cxx:
	Added this file to implement file positioning functions.

	* src/common/fclose.cxx (fclose):
	Added call to Cyg_StdioStream::close().

	* include/stdiosupp.hxx:
	* src/common/stdiosupp.cxx: 
	Modified Cyg_libc_stdio_find_filename() to take mode, binary and
	append arguments.

	* src/common/stdin.cxx: 
	* src/common/stdout.cxx: 
	* src/common/stderr.cxx:
	Modified calls to Cyg_libc_stdio_find_filename() to pass
	appropriate values for mode, binary and append arguments.

2000-06-18  Jonathan Larmour  <jlarmour@redhat.co.uk>

	* src/common/vsscanf.cxx: Add NULL select entry to DEVIO_TABLE
	* src/common/vsnprintf.cxx: Likewise

2000-05-25  Hugo Tyson  <hmt@cygnus.co.uk>
 
        * include/stream.inl (set_error): If the error is EEOF, set
        the EOF flag (flags.at_eof) so that clients know.
 
        * src/input/fgetc.cxx (__fgetc):
        * src/input/fgets.cxx (_fgets):
        * src/input/fread.cxx (_fread): Correctly handle an error,
        or EOF indication, from real_stream->refill_read_buffer().

2000-05-02  Jonathan Larmour  <jlarmour@redhat.co.uk>

	* New package
	Separated original libc out into separate packages on functional
	boundaries.
	Header files are now managed by isoinfra package
	Plenty of cleanups done, but no major functionality changes

//===========================================================================
// ####GPLCOPYRIGHTBEGIN####                                                
// -------------------------------------------                              
// This file is part of eCos, the Embedded Configurable Operating System.   
// Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004, 2006, 2009 Free Software Foundation, Inc.
//
// This program is free software; you can redistribute it and/or modify     
// it under the terms of the GNU General Public License as published by     
// the Free Software Foundation; either version 2 or (at your option) any   
// later version.                                                           
//
// This program is distributed in the hope that it will be useful, but      
// WITHOUT ANY WARRANTY; without even the implied warranty of               
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU        
// General Public License for more details.                                 
//
// You should have received a copy of the GNU General Public License        
// along with this program; if not, write to the                            
// Free Software Foundation, Inc., 51 Franklin Street,                      
// Fifth Floor, Boston, MA  02110-1301, USA.                                
// -------------------------------------------                              
// ####GPLCOPYRIGHTEND####                                                  
//===========================================================================