Re: Consistently use palloc_object() and palloc_array() - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: Consistently use palloc_object() and palloc_array()
Date
Msg-id aTiqDV9wxbCfox1p@paquier.xyz
Whole thread Raw
In response to Re: Consistently use palloc_object() and palloc_array()  (Thomas Munro <thomas.munro@gmail.com>)
List pgsql-hackers
On Wed, Dec 10, 2025 at 11:41:25AM +1300, Thomas Munro wrote:
> On Wed, Dec 10, 2025 at 11:38 AM Michael Paquier <michael@paquier.xyz> wrote:
>>             b_checkargnulls =
>> -               palloc(sizeof(LLVMBasicBlockRef *) * op->d.func.nargs);
>> +               palloc_array(LLVMBasicBlockRef *, op->d.func.nargs);
>>
>> This one in llvmjit_expr.c was causing a compilation failure.  I am
>> not exactly sure why, but discarded for now.  I got a reproduction
>> locally as well as in the CI.
>
> I think the original code is wrong, it should have been
> sizeof(LLVMBasicBlockRef)?  It'll be the same size anyway (these
> LLVM*Ref types are just pointers), but that'd explain why the
> transformation didn't compile.

Yes, perhaps, I would need to double-check to be sure, and you make it
sound like this one should be back-patched.  I was planning to get
back to this one with the batch of non-trivial changes that Bryan has
posted now that I've cleared the path for the stright-forward ones.
--
Michael

Attachment

pgsql-hackers by date:

Previous
From: Thomas Munro
Date:
Subject: Re: Solaris versus our NLS files
Next
From: David Rowley
Date:
Subject: Re: Fix incorrect comments in tuplesort.c