Mercurial > ecos
diff packages/language/c/libc/stdio/current/include/stdio.h @ 1541:871b38a618f4
* 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.
| author | jlarmour |
|---|---|
| date | Mon, 15 Mar 2004 15:21:43 +0000 |
| parents | 6eb55882e01c |
| children | be5ecb9f3106 |
line wrap: on
line diff
--- a/packages/language/c/libc/stdio/current/include/stdio.h +++ b/packages/language/c/libc/stdio/current/include/stdio.h @@ -119,97 +119,113 @@ typedef CYG_ADDRESS FILE[9999]; //======================================================================== -// ISO C 7.9.5 File access functions +// ISO C89 7.9.4 Functions for operations on files -externC int -fclose( FILE * /* stream */ ); +__externC int +remove( const char * /* pathname */ ) __THROW; + +__externC int +rename( const char * /* oldpath */, const char * /* newpath */ ) __THROW; -externC int -fflush( FILE * /* stream */ ); +__externC FILE * +tmpfile( void ) __THROW; -externC FILE * -fopen( const char * /* filename */, const char * /* mode */ ); +__externC char * +tmpnam(char * /* s */ ) __THROW; + +//======================================================================== + +// ISO C89 7.9.5 File access functions -externC FILE * -freopen( const char * /* filename */, const char * /* mode */, - FILE * /* stream */ ); +__externC int +fclose( FILE * /* stream */ ) __THROW; + +__externC int +fflush( FILE * /* stream */ ) __THROW; + +__externC FILE * +fopen( const char * /* filename */, const char * /* mode */ ) __THROW; -externC void -setbuf( FILE * /* stream */, char * /* buffer */ ); +__externC FILE * +freopen( const char * /* filename */, const char * /* mode */, + FILE * /* stream */ ) __THROW; -externC int +__externC void +setbuf( FILE * /* stream */, char * /* buffer */ ) __THROW; + +__externC int setvbuf( FILE * /* stream */, char * /* buffer */, int /* mode */, - size_t /* size */ ); + size_t /* size */ ) __THROW; //======================================================================== -// ISO C 7.9.6 Formatted input/output functions +// ISO C89 7.9.6 Formatted input/output functions -externC int -fprintf( FILE * /* stream */, const char * /* format */, ... ); +__externC int +fprintf( FILE * /* stream */, const char * /* format */, ... ) __THROW; -externC int -fscanf( FILE * /* stream */, const char * /* format */, ... ); +__externC int +fscanf( FILE * /* stream */, const char * /* format */, ... ) __THROW; -externC int -printf( const char * /* format */, ... ); +__externC int +printf( const char * /* format */, ... ) __THROW; -externC int -scanf( const char * /* format */, ... ); +__externC int +scanf( const char * /* format */, ... ) __THROW; -externC int -sprintf( char * /* str */, const char * /* format */, ... ); +__externC int +sprintf( char * /* str */, const char * /* format */, ... ) __THROW; -externC int -sscanf( const char * /* str */, const char * /* format */, ... ); +__externC int +sscanf( const char * /* str */, const char * /* format */, ... ) __THROW; -externC int +__externC int vfprintf( FILE * /* stream */, const char * /* format */, - va_list /* args */ ); + va_list /* args */ ) __THROW; -externC int -vprintf( const char * /* format */, va_list /* args */ ); +__externC int +vprintf( const char * /* format */, va_list /* args */ ) __THROW; -externC int +__externC int vsprintf( char * /* str */, const char * /* format */, - va_list /* args */ ); + va_list /* args */ ) __THROW; //======================================================================== -// ISO C 7.9.7 Character input/output functions +// ISO C89 7.9.7 Character input/output functions -externC int -fgetc( FILE * /* stream */ ); +__externC int +fgetc( FILE * /* stream */ ) __THROW; -externC char * -fgets( char * /* str */, int /* length */, FILE * /* stream */ ); +__externC char * +fgets( char * /* str */, int /* length */, FILE * /* stream */ ) __THROW; -externC int -fputc( int /* c */, FILE * /* stream */ ); +__externC int +fputc( int /* c */, FILE * /* stream */ ) __THROW; -externC int -putc( int /* c */, FILE * /* stream */ ); +__externC int +putc( int /* c */, FILE * /* stream */ ) __THROW; -externC int -putchar( int /* c */ ); +__externC int +putchar( int /* c */ ) __THROW; -externC int -fputs( const char * /* str */, FILE * /* stream */ ); +__externC int +fputs( const char * /* str */, FILE * /* stream */ ) __THROW; -externC char * -gets( char * ); +__externC char * +gets( char * ) __THROW; -externC int -getc( FILE * /* stream */ ); +__externC int +getc( FILE * /* stream */ ) __THROW; -externC int -getchar( void ); +__externC int +getchar( void ) __THROW; -externC int -puts( const char * /* str */ ); +__externC int +puts( const char * /* str */ ) __THROW; -externC int -ungetc( int /* c */, FILE * /* stream */ ); +__externC int +ungetc( int /* c */, FILE * /* stream */ ) __THROW; // no function equivalent is required for getchar() or putchar(), so we can // just #define them @@ -220,81 +236,81 @@ ungetc( int /* c */, FILE * /* stream */ //======================================================================== -// ISO C 7.9.8 Direct input/output functions +// ISO C89 7.9.8 Direct input/output functions -externC size_t +__externC size_t fread( void * /* ptr */, size_t /* object_size */, - size_t /* num_objects */, FILE * /* stream */ ); + size_t /* num_objects */, FILE * /* stream */ ) __THROW; -externC size_t +__externC size_t fwrite( const void * /* ptr */, size_t /* object_size */, - size_t /* num_objects */, FILE * /* stream */ ); + size_t /* num_objects */, FILE * /* stream */ ) __THROW; //======================================================================== -// ISO C 7.9.9 File positioning functions +// ISO C89 7.9.9 File positioning functions -externC int -fgetpos( FILE * /* stream */, fpos_t * /* pos */ ); +__externC int +fgetpos( FILE * /* stream */, fpos_t * /* pos */ ) __THROW; -externC int -fseek( FILE * /* stream */, long int /* offset */, int /* whence */ ); +__externC int +fseek( FILE * /* stream */, long int /* offset */, int /* whence */ ) __THROW; -externC int -fsetpos( FILE * /* stream */, const fpos_t * /* pos */ ); +__externC int +fsetpos( FILE * /* stream */, const fpos_t * /* pos */ ) __THROW; -externC long int -ftell( FILE * /* stream */ ); +__externC long int +ftell( FILE * /* stream */ ) __THROW; -externC void -rewind( FILE * /* stream */ ); +__externC void +rewind( FILE * /* stream */ ) __THROW; //======================================================================== -// ISO C 7.9.10 Error-handling functions +// ISO C89 7.9.10 Error-handling functions -externC void -clearerr( FILE * /* stream */ ); +__externC void +clearerr( FILE * /* stream */ ) __THROW; -externC int -feof( FILE * /* stream */ ); +__externC int +feof( FILE * /* stream */ ) __THROW; -externC int -ferror( FILE * /* stream */ ); +__externC int +ferror( FILE * /* stream */ ) __THROW; -externC void -perror( const char * /* prefix_str */ ); +__externC void +perror( const char * /* prefix_str */ ) __THROW; //======================================================================== // Other non-ISO C functions -externC int +__externC int fnprintf( FILE * /* stream */, size_t /* length */, - const char * /* format */, ... ) CYGBLD_ATTRIB_PRINTF_FORMAT(3, 4); + const char * /* format */, ... ) __THROW CYGBLD_ATTRIB_PRINTF_FORMAT(3, 4); -externC int +__externC int snprintf( char * /* str */, size_t /* length */, const char * /* format */, - ... ) CYGBLD_ATTRIB_PRINTF_FORMAT(3, 4); + ... ) __THROW CYGBLD_ATTRIB_PRINTF_FORMAT(3, 4); -externC int +__externC int vfnprintf( FILE * /* stream */, size_t /* length */, - const char * /* format */, va_list /* args */ ); + const char * /* format */, va_list /* args */ ) __THROW; -externC int +__externC int vsnprintf( char * /* str */, size_t /* length */, - const char * /* format */, va_list /* args */ ); + const char * /* format */, va_list /* args */ ) __THROW; -externC int -vscanf( const char * /* format */, va_list /* args */ ); +__externC int +vscanf( const char * /* format */, va_list /* args */ ) __THROW; -externC int +__externC int vsscanf( const char * /* str */, const char * /* format */, - va_list /* args */ ); + va_list /* args */ ) __THROW; -externC int +__externC int vfscanf( FILE * /* stream */, const char * /* format */, - va_list /* args */ ); + va_list /* args */ ) __THROW; // INLINE FUNCTIONS
