This is the mail archive of the newlib@sources.redhat.com mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Change defines for stdin, stdout and stderr


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]