When mallocr.c gets compiled using the current cygwin devel base (gcc 3.3.3), the following symbols are undefined (presumably linked in from a Win32 DLL):

         U [EMAIL PROTECTED]
         U [EMAIL PROTECTED]
         U [EMAIL PROTECTED]
         U [EMAIL PROTECTED]
         U [EMAIL PROTECTED]

However, in a slightly older cygwin (using gcc 3.3.1), the undefined symbols are:

         U [EMAIL PROTECTED]
         U [EMAIL PROTECTED]
         U [EMAIL PROTECTED]
         U [EMAIL PROTECTED]
         U [EMAIL PROTECTED]

Now, these functions are declared in winbase.h (included indirectly by mallocr.c) as follows:

         #ifndef WINBASEAPI
         #ifdef __INSIDE_CYGWIN__
         #define WINBASEAPI
         #else
         #define WINBASEAPI DECLSPEC_IMPORT
         #endif

         WINBASEAPI PVOID WINAPI VirtualAlloc(PVOID,DWORD,DWORD,DWORD);
         ...

I can see that currently it thinks these functions are to be imported from a DLL, but why did it used to behave differently? The reason I care is that my XBOX port of newlib provides its own implementation of those functions that get *statically* linked in to libc.a (which used to work just fine until I upgraded to a later version of cygwin). Does anyone have any theories?

Many thanks.

--
Craig Edwards


-- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/



Reply via email to