avifil32: Removed sign comparison warning (sizeof expresions)
Andrey Turkin
andrey.turkin at gmail.com
Mon Aug 23 04:42:49 CDT 2010
On Monday 23 August 2010 13:16:07 Michael Stefaniuc wrote:
> IMHO gcc is *wrong* in emitting a warning there. sizeof(PCMWAVEFORMAT)
> is a compile time constant and gcc can see that sizeof(PCMWAVEFORMAT)
> falls well inside the number range expressible by a LONG. Logically
> there is no difference between
> formatsize <= sizeof(PCMWAVEFORMAT)
> and
> formatsize <= 16
> One gives a bogus warning and the other doesn't.
C99 std (para 6.5.3.4.4) states following about sizeof operator:
"...its type (an unsigned integer type) is size_t, defined in <stddef.h> (and
other headers)."
sizeof result is a compile-time constant but, unlike numeric constants, its
type must always be size_t so gcc does the correct thing here.
More information about the wine-devel
mailing list