comparison packages/language/c/libc/current/include/stdio.h @ 16:4f2df4ab82c8 ecos-sw-1999-06-18

Merge from eCos master repository on 1999-06-18-15:25:04-BST
author jlarmour
date Fri, 18 Jun 1999 07:59:09 +0000
parents 443894e2e912
children 4741a3c3496a
comparison
equal deleted inserted replaced
15:c0d8793d9978 16:4f2df4ab82c8
83 // A type capable of specifying uniquely every file position - ISO C 83 // A type capable of specifying uniquely every file position - ISO C
84 // standard chap 7.9.1 84 // standard chap 7.9.1
85 typedef cyg_ucount32 fpos_t; 85 typedef cyg_ucount32 fpos_t;
86 86
87 87
88 typedef CYG_ADDRESS FILE; // FILE is just cast to an address here. It is 88 // FILE is just cast to an address here. It is uncast internally to the
89 // uncast internally to the C library in stream.hxx 89 // C library in stream.hxx as the C++ Cyg_StdioStream class.
90 // as the C++ Cyg_StdioStream class. Optional 90 // Optional run-time checking can be enabled to ensure that the cast is
91 // run-time checking can be enabled to ensure that 91 // valid, using the standard assertion functionality.
92 // the cast is valid, using the standard assertion 92 //
93 // functionality 93 // The array size is irrelevant other than being more than 8, and is present
94 // to stop references to FILEs being marked as able to be put in the small
95 // data section. We can't just mark it as in the ".data" section as on some
96 // targets it may actually be ".common". Maybe this doesn't matter?
97 // FIXME: This doesn't work if things are larger than 16 are put in sdata,
98 // e.g. on mips by specifying -G 32
99 typedef CYG_ADDRESS FILE[16];
94 100
95 // EXTERNAL VARIABLES 101 // EXTERNAL VARIABLES
96 102
97 // Default file streams for input/output. These only need to be 103 // Default file streams for input/output. These only need to be
98 // expressions, not l-values - ISO C standard chap. 7.9.1 104 // expressions, not l-values - ISO C standard chap. 7.9.1
104 // CYGPRI_LIBC_STDIO_NO_DEFAULT_STREAMS is used when initializing 110 // CYGPRI_LIBC_STDIO_NO_DEFAULT_STREAMS is used when initializing
105 // cyg_libc_stdio_stdin/out/err privately inside the C library 111 // cyg_libc_stdio_stdin/out/err privately inside the C library
106 112
107 #ifndef CYGPRI_LIBC_STDIO_NO_DEFAULT_STREAMS 113 #ifndef CYGPRI_LIBC_STDIO_NO_DEFAULT_STREAMS
108 extern FILE cyg_libc_stdio_stdin, cyg_libc_stdio_stdout, 114 extern FILE cyg_libc_stdio_stdin, cyg_libc_stdio_stdout,
109 cyg_libc_stdio_stderr; 115 cyg_libc_stdio_stderr;
110 116
111 #define stdin (&cyg_libc_stdio_stdin) 117 #define stdin (&cyg_libc_stdio_stdin)
112 #define stdout (&cyg_libc_stdio_stdout) 118 #define stdout (&cyg_libc_stdio_stdout)
113 #define stderr (&cyg_libc_stdio_stderr) 119 #define stderr (&cyg_libc_stdio_stderr)
114 #endif 120 #endif