@nogc required on C API callbacks?

Brian Schott via Digitalmars-d digitalmars-d at puremagic.com
Wed Jul 9 15:20:15 PDT 2014


On Wednesday, 9 July 2014 at 19:54:11 UTC, Brian Schott wrote:
> https://github.com/D-Programming-Language/druntime/blob/master/src/core/stdc/signal.d
>
> When @nogc was added to the top of that file, the type of 
> sigfn_t changed from "void function(int) extern (C) @system 
> nothrow" to "void function(int) extern (C) @system nothrow 
> @nogc".
>
> This breaks some code such as the ae library used by Digger. 
> (The @nogc annotation is now required on signal handlers). The 
> argument for requiring @nogc on C library callbacks makes sense 
> to me, so I'd like to know if this was intentional.

After doing a bit more searching on the bug tracker I discovered 
that this is another instance of

https://issues.dlang.org/show_bug.cgi?id=12710
https://issues.dlang.org/show_bug.cgi?id=12738

I'll create a pull request that rearranges a few more of these 
attributes.


More information about the Digitalmars-d mailing list