On Sat, 28 Jul 2001, Patrik Stridvall wrote: [...]
The real reason that we should support compiling Wine with -DSTRICT is not because handles becomes pointers but because callbacks gets the correct prototype.
I case not you haven't realized the obvious, it doesn't matter if the handles are 32-bit integer or 32-bit pointers as long as all handles are the same. The code either
No, I think you have missed something: when compiling with -DSTRICT on all handles are not the same. For instance you cannot do hDesk=hAccel. That's because with -DSTRICT on you have:
typedef struct HDESK__ { int unused; } *HDESK; typedef struct HACCEL__ { int unused; } *HACCEL;
Thus HDESK and HACCEL are incompatible pointer types. This brings us more type safety which is the whole point of -DSTRICT.
About 64bits Windows I don't know yet how we are going to do that. But you have to check exactly what Windows 64bit does, not just extrapolate from the way Unix 64bit does things. AFAIK the approach used by windows is quite different from that which Unices took.
-- Francois Gouget fgouget@free.fr http://fgouget.free.fr/ RFC 2549: ftp://ftp.isi.edu/in-notes/rfc2549.txt IP over Avian Carriers with Quality of Service