Thread

  1. Re: Consistently use palloc_object() and palloc_array()

    Thomas Munro <thomas.munro@gmail.com> — 2025-12-09T22:41:25Z

    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.