Hi,
On Mon, Nov 24, 2025 at 12:43:28PM -0600, Nathan Bossart wrote:
> On Mon, Nov 24, 2025 at 10:26:32AM +0000, Bertrand Drouvot wrote:
> > This is the same kind of idea as 7f798aca1d5 and ef8fe693606, as their presence
> > could cause risks of hiding actual type mismatches in the future or silently
> > discarding qualifiers. I think that it also improves readability.
>
> Seems reasonable to me.
Thanks for looking at it!
> > Note that it generated more that what is in the attached. I chose not to remove
> > some of them (mainly arithmetic ones) to keep the patch focused on what matters
> > here.
>
> Can you give an example of what you are talking about here?
Things like:
A)
- int k = (int) (targrows * sampler_random_fract(&rstate.randstate));
+ int k = (targrows * sampler_random_fract(&rstate.randstate));
That's a valid cast removal but I'm not sure about the removal added value here.
B)
- sign = (BITVECP) (((char *) sign) + 1);
+ sign = ((sign) + 1);
BITVECP is "typedef char *BITVECP; So that's a valid cast removal but I decided
to keep it for semantic reason.
Same as:
@@ -2277,7 +2277,7 @@ printTrgmColor(StringInfo buf, TrgmColor co)
else if (co == COLOR_BLANK)
appendStringInfoChar(buf, 'b');
else
- appendStringInfo(buf, "%d", (int) co);
+ appendStringInfo(buf, "%d", co);
where TrgmColor is "typedef int TrgmColor;"
C)
- if (((unsigned char *) base)[i] != 0xff)
+ if ((base)[i] != 0xff)
because not safe.
See attached the full list that I decided not to include.
Do you think we should add some of them in the patch? (maybe the ones in
nbtcompare.c for example)
Regards,
--
Bertrand Drouvot
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com