On Mon, Aug 23, 2021 at 4:09 PM David Malcolm <dmalc...@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__.

Reply via email to