mirror of
https://git.proxmox.com/git/mirror_edk2
synced 2025-10-25 07:30:52 +00:00
There are several significant differences between the mingw32 (gcc 4.3.0 based) compiler and the GCC 4.4 and later compilers.
Mingw32 requires that types int, long, long long, unsigned { int, long, long long}, float, and double be the only types passed to va_arg(). This requires the programmer to ensure that va_arg is called with type int for arguments of any type with a size less-than or equal-to int. GCC 4.4 and later does not require this and performs the appropriate promotions for you.
Mingw32 uses 32-bit long in both ia32 and x64 mode. GCC 4.4 makes long a 64-bit value when in x64 mode.
Signed-off-by: darylm503
Reviewed-by: jcarsey
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12258 6f19259b-4bc3-4df7-8a09-765794883524
|
||
|---|---|---|
| .. | ||
| ansi.h | ||
| asm.h | ||
| atomic.h | ||
| bswap.h | ||
| byte_swap.h | ||
| endian_machdep.h | ||
| endian.h | ||
| float.h | ||
| fpu.h | ||
| ieee.h | ||
| int_const.h | ||
| int_fmtio.h | ||
| int_limits.h | ||
| int_mwgwtypes.h | ||
| int_types.h | ||
| limits.h | ||
| math.h | ||
| param.h | ||
| signal.h | ||
| types.h | ||