[msvcrt] properly align struct _stati64's st_size
Dmitry Timoshkov
dmitry at codeweavers.com
Sat Feb 3 23:58:58 CST 2007
"Hans Leidekker" <hans at it.vu.nl> wrote:
>> Does the approach used in winbase.h in declaration of WIN32_STREAM_ID to
>> align the Size field help?
>
> That should fix this particular struct but __int64 is used elsewhere
> inside and outside of Wine, so maybe the typedef for __int64 itself
> should get the alignment attribute?
To make sure that Wine headers are free of alignment bugs we have
dlls/*/tests/generated.c auto generated by tools/winapi. We just need
to add msvcrt types to tests.dat.
It looks like a lot of the CRT headers in PSDK (including sys/stat.h) set
alignment manually to 8, for example direct.h has the following comment:
#ifdef _MSC_VER
/*
* Currently, all MS C compilers for Win32 platforms default to 8 byte
* alignment.
*/
#pragma pack(push,8)
#endif /* _MSC_VER */
--
Dmitry.
More information about the wine-devel
mailing list