<div dir="ltr">
> In C, the allocation should be done with the MR_GC_NEW macro,<br>



which is defined in runtime/mercury_memory.h, or its MR_GC_NEW_ATTRIB<br><div>



variant, which help with memory profiling. <br></div><div><br></div><div>The foreign_proc should unbox the struct (if it's not a pointer type) for you in the C function prologue it writes, shouldn't it?<br></div></div>