ImportC and nothrow/@nogc?

Tim tim.dlang at t-online.de
Sun Aug 18 10:47:14 UTC 2024


On Sunday, 18 August 2024 at 04:43:34 UTC, Manu wrote:
> I just tried using ImportC for the first time ever, but I was 
> surprised
> when I immediately received a sea of errors calling the C 
> symbols from
> `nothrow @nogc` functions.
> My entire program is `nothrow @nogc`... I assumed ImportC would 
> be
> supremely suitable in this context, but apparently not...
>
> Is there something I've missed? Is there a plan for this?
> I found just one single very short forum thread...
>
> This is classic D experience; so much work has been done on 
> this, and then the moment I try and use something I encounter a 
> showstopping oversight >_<

ImportC supports the following syntax for `nothrow` functions:
```
__declspec(nothrow) void f()
{
}
__attribute__((nothrow)) void f2()
{
}
```

Unfortunately this only works for `nothrow` and not `@nogc` and 
needs to be added to every declaration.


More information about the Digitalmars-d mailing list