Analyzer tests fail on windows
NightStrike
nightstrike@gmail.com
Tue Aug 24 00:16:35 GMT 2021
On Mon, Aug 23, 2021 at 4:09 PM David Malcolm <dmalcolm@redhat.com> wrote:
>
> On Mon, 2021-08-23 at 09:52 -1000, NightStrike wrote:
> > David,
> >
> > Many of the analyzer tests fail on windows because they hardcode in
> > the
> > typedef of size_t to be unsigned long. This is not a platform
> > independent
> > definition, though, and is wrong for 64 bit windows. This causes
> > extra
> > warnings that all of the functions using size_t arguments are wrong,
> > because they need to be unsigned long long.
> >
> > Is their either 1) a built in type you can use, like __SIZE_T__ if
> > that's
> > such a thing, or 2) can you just include stddef.h instead of
> > manually
> > putting the typedef at the top of each test?
>
> Which tests are failing, specifically?
>
> In many analyzer tests I'm using __SIZE_TYPE__ or stddef.h, however
> I've recently added various tests reduced from the Linux kernel on
> x86_64 which use unsigned long - maybe I need to rethink those.
At least pr99774-1.c failed, but a non-comprehensive grep shows these:
gzio-3a.c:typedef long unsigned int size_t;
gzio-3.c:typedef long unsigned int size_t;
pr99774-1.c:typedef long unsigned int size_t;
zlib-5.c:typedef long unsigned int size_t;
I can look more thoroughly later today.
I admit my qualification of "many" is incorrect, given how many tests
use __SIZE_TYPE__.
More information about the Gcc
mailing list