On Monday, 5 August 2024 at 11:35:56 UTC, Dennis wrote:
On Monday, 5 August 2024 at 11:02:24 UTC, Dakota wrote:
This will not work for me. (huge code base I can not change and maintain)

You don't have to change the code where the type is defined per se, you just need to put it in any C file that can access the C symbol.

clib_helpers.c:
```C
#include<hugelibrary.h>

typedef struct S S_t;
```

app.d:
```
import clib_helpers;

S_t s;
```

Thanks for the explain.

I will think about this.

my solution use ctfe symbol_name to get d define, and the symbol type name is get from ref place, (function arguments, struct field), so to fix it I need replace the type ref from headers files. In this case I get a wrong reflect type when I use `__traits(getMember, module, symbol);`


Reply via email to