This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project. See the Cygwin home page for more information.
Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: libc and crt support...


"Brian Macy" <bmacy@sunshinecomputing.com> writes:
> I noticed 2 things when using the Cygwin stuff.
> 
> - There is no vsnprintf
> - There is no beginthreadex
> 
> Where can I go to change this? beginthreadex is cake to implement and is the
> only sane way to implement a thread class. vsnprintf is the only safe way to
> implement a C++ String class with a sprintf function.

Both are non-standard; if you start adding all the routines that everybody 
wants/needs, then you end up with Win32 API ;-)

beginthreadex is not part of win32 API and has no place in Cygwin runtime.
It's not even part of Windows standard C runtime, but was added later on
to MSVC runtime. If you're going to have MSVC-specific code, then the
correct approach is to write a portability layer to provide emulation 
for other runtimes.

vsnprintf would be a very useful function to have in newlib, but it
doesn't exist there; however, vsprintf/vfprintf/etc do exist and you
should be able to use those instead. Or, get a free version off the net
and add it to your port library.

Regards,
Mumit


--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com