On Wednesday, 24 September 2014 at 21:35:44 UTC, Iain Buclaw via Digitalmars-d wrote:
On 24 September 2014 19:22, Iain Buclaw via Digitalmars-d
<[email protected]> wrote:
I don't know how DMD compiles rt.lifetime successfully.

https://github.com/D-Programming-Language/druntime/search?utf8=%E2%9C%93&q=_d_monitordelete

It should error with 'undefined identifier _d_monitordelete' - but no, that
would be the obvious thing to do.

Iain


Another weird one that has me for the moment stumped...

https://github.com/D-Programming-Language/druntime/search?utf8=%E2%9C%93&q=callWithStackShell%28scope&type=Code

callWithStackShell is marked nothrow, yet it's delegate parameter 'fn'
is not nothrow!

Bonus points, D inline assembly in a nothrow function.

I ran into this when compiling the 2.066 frontend with ldc HEAD for linux/arm, but not for linux/x86. I figured it was some strange issue with ARM and worked around it by labeling "fn" as nothrow, then the actual function "op" passed to it in thread_suspendHandler as nothrow, and finally removing the commented out nothrow at the top of core.sys.posix.signal. That finally shut it up, and the tests passed too.

So at least ldc seems to detect it as an error on certain arches! ;)

Reply via email to