Change defines for stdin, stdout and stderr

Thomas Pfaff tpfaff@gmx.net
Wed Jun 18 16:17:00 GMT 2003


Eric de Jong wrote:
> Hello Thomas,
> 
> 
>>To avoid this in the future i would suggest to change the defines for
>>stdin, stdout and stderr similar to errno.
>>
>>#define stdin (*__stdin())
>>extern  __FILE **__stdin _PARAMS ((void));
> 
> 
> Will this slow down ecos and make the code larger? It does involve an extra
> function call. I agree this is a small change, but ecos is build around defines
> to get the smallest codesize and best performance.
> 
> I do not say the above is not a good solution, but recompiling the user
> application and libraries after a change to ecos is not a problem. Wat we do
> need is a way to let the compiler check if the defines are the same for all
> compiled binaries, to avoid hard to track bugs after a change to the ecoas
> library, and one forgot to recompile his libs...
> 

Cygwin has a large collection of precompiled libs and applications that 
are maintained by different people and recompiling them all will be 
longer transition. Of course a change of stdin, stdout and stderr will 
not affect already existing cygwin packages. A change of stdin, stdout 
and stderr will help only other projects using newlib that might change 
__DYNAMIC_REENT__ at some point when multithreading becomes an issue.

But before i create a patch i would like to discuss this on the list.

Thomas



More information about the Newlib mailing list