On 28/02/2021 8:05 PM, Jack wrote:
int[] arr = [1, 2, 3];
size_t l = cast(size_t)arr.ptr;

Okay, so far so good

int[] a = cast(int[]) cast(void*) l;

Umm, you haven't specified a length?

int[] a = (cast(int*)l)[0 .. 3];

If the callback is being called (in effect under the current stack frame and won't escape), I would wrap the data you need in a struct and pass that to it instead by pointer. No need for heap allocation and gives a way to pass more complex data should the need arise.

Reply via email to