Re: [PATCH] openrisc: Define __kernel_size_t to suppress compiler warnings

From: Stafford Horne
Date: Tue Dec 20 2016 - 18:02:27 EST


Hi,

On Tue, Dec 20, 2016 at 11:44:43PM +0100, Andreas Schwab wrote:
> On Dez 20 2016, Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> wrote:
>
> > When I saw this patch, I was already a bit skeptical about it, but I noticed
> > other architectures (e.g. avr32) are doing the same, so I didn't reply.
> >
> > In my experience, "format '%zu' expects argument of type 'size_t', but
> > argument 3 has type 'unsigned int'" happens when using a compiler that
> > was not configured to use the correct type (should be unsigned long) for
> > size_t. Typically this happens when using a compiler not configured for
> > a Linux target.
>
> 32-bit targets typically use unsigned int for size_t. It is part of the
> ABI, so all compilers must agree. Since or32 is a out-of-tree port, and
> gcc defaults to unsigned long for size_t, mismatches can happen if
> people are using incomplete patches.

Thanks,

To tell the truth I was skeptical of this patch as well. But I figured I
could send out the patch and see what kind of feedback it would get. I
was expecting compiler actually, but wasn't sure exactly where.

So this is the best feedback I could have expected. Thanks.

I am using gcc with newlib 'or1k-elf-'. I also have a musl, linux,
target compiler. I will look into that.

-Stafford