On Saturday, 20 July 2019 at 14:19:08 UTC, Adam D. Ruppe wrote:

Like the other person said, try/catch turns throws to nothrow. The `debug` keyword disables pure checks. Those make this easy without any mixin or wrappers/casts at all.

But even if you did want to do the mixin route, look at how Phobos does this.

http://dpldocs.info/experimental-docs/std.traits.SetFunctionAttributes.1.html

the example of that function shows adding pure to a function pointer. (and btw I think the phobos function itself works with -betterC as well, you might be able to simply call it).


Thanks your all for explain, now i get a better understand how pure & debug & nothrow to work together.




Reply via email to