extern(C) and slices

Jacob Carlborg via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Mon Sep 11 23:23:57 PDT 2017


On 2017-09-12 01:03, Nordlöw wrote:
> If I have a function like
> 
> `extern(C) void f(void *x, size_t x_sz)`
> 
> can I instead declare it as
> 
> `extern(C) void f(void[] x)`
> 
> ?

It looks like the length needs to come first [1]. I think it would be 
technically possible if you flipped the parameters but you would become 
dependent on the ABI as well. I would recommend a wrapper instead.

[1] https://dlang.org/spec/abi.html#arrays

-- 
/Jacob Carlborg


More information about the Digitalmars-d-learn mailing list