On 08.10.26 22:35, David Rowley wrote:
I'd like to get time to put in more effort into figuring out what's
going on with the gcc as I wondered how many other places we're
getting inefficient code because of this. More research may discover
that we really shouldn't use ints to index arrays, for example.
It is meant to be 32-bits on 32-bit platforms. Why is uintptr_t better
than size_t for indexing an array? Or rather, what's wrong with
size_t? I had assumed you highlighted this because of some fields
being int and some being size_t, but if you're happier with uintptr_t,
then I may have misunderstood.
I'm fine with leaving it as is for now. I'm going around fixing signed
vs. unsigned integer mismatches, and this is being flagged because
size_t is unsigned and attribute numbers are in general signed, and
could at least in some cases actually be negative. But this is only one
of many problems, so I can silence this in my local work for now. (So
the suggestion to use uintptr_t was also wrong; it should have been
intptr_t, or possibly ssize_t, but given your explanation, I'm not
worried about this right now; I would rather see you find a proper
solution.)