include/msvcrt/crtdbg.h

Saulius Krasuckas saulius2 at ar.fi.lt
Tue Jul 19 09:07:46 CDT 2005


It seems I was too in hurry.  Some comments follows.


* On Tue, 19 Jul 2005, Saulius Krasuckas wrote:
> 
> int       <->  long int.
> void (*)  <->  void (__cdecl *_CRT_DUMP_CLIENT) (void *, size_t)

I mean differences between native version and a Wine's one.

> Then I see all the declared function are defined to be non-operational:
> 
> | #endif /* _DEBUG */
> | 
> | #define _CrtCheckMemory()               ((int)1)
> | #define _CrtDbgReport(...)              ((int)0)
> | #define _CrtDoForAllClientObjects(f,c)  ((void)0)
> | #define _CrtDumpMemoryLeaks()           ((int)0)

These are defined in the Wine tree.  They are out of the #ifndef _DEBUG - 
#else - #endif statement, so they make inclusion of a header file 
impossible.

Definitions should be transfered into two parts:  operational (_DEBUG 
defined) and non operational (no _DEBUG defined).  Right?

> Yet then I see lots of declared functions are prefixed with __cdecl and 
> _CRTIMP prefixes.
  ...
> | #define _CRTIMP __declspec(dllimport)

And that comes from native header file.  Should we do the same in the Wine 
header?

Maybe someone is working on this already?



More information about the wine-devel mailing list