PATCH - twain.h

Francois Gouget fgouget at
Fri Jun 14 12:17:10 CDT 2002

On Fri, 14 Jun 2002, Steven Edwards wrote:

> I dont know if this is proper or not but mingw already
> defines WIN32 _WIN32 and __declspec(spec)
> Changelog: Fix Warnings
> cvs diff -u twain.h
> Index: twain.h
> ===================================================================
> RCS file: /home/wine/wine/dlls/twain/twain.h,v
> retrieving revision 1.3
> diff -u -r1.3 twain.h
> --- twain.h	31 May 2002 23:40:53 -0000	1.3
> +++ twain.h	14 Jun 2002 10:42:57 -0000
> @@ -56,9 +56,11 @@
>  #define FAR
>  #define huge
> +#ifndef __MINGW__
>  #define WIN32
>  #define _WIN32
>  #define __declspec(spec)
> +#endif

I don't think the twain.h header should define any of these macros,
including FAR and huge.

The main issue is that _WIN32 is normally defined by the compiler. As an
alternative we could define it in one of the Wine headers, but why
define _WIN32 rather than _WIN64?
Maybe we could add the following in basestd.h:
#if !defined(_WIN32) && !defined(_WIN64)
#define _WIN32

WIN32 is not normally defined by the compiler but it is part of the
default set of macros defined my Visual C++ project. So maybe we should

#ifdef _WIN32
#define WIN32

Does anyone else care to comment on the above?

 * FAR is defined in winnt.h so there is no need to redefine it
 * __declspec is defined in winnt.h too
 * huge will not be needed if WIN32 is defined

Francois Gouget         fgouget at
              Linux: Because rebooting is for adding new hardware

More information about the wine-devel mailing list