2019-01-01から1ヶ月間の記事一覧
(2019/02/07; いくつか追記したのでそちらのほうもみてください) 現在の最新版コンパイラ(DMD 2.084.0)だと, このコードはSEGVで落ちてしまう. auto foo(scope void delegate() @safe dg) @safe { return dg; } auto bar(void delegate() @safe dg) @safe …
なんかおもしろいコンパイラのバグに遭遇したのでめも。 もともとはpeggedを使ったプロジェクトで dub build --build=profile でビルドしたバイナリを実行するとSEGVに遭遇するんだけど・・・、という問題だった。 とりあえずgdbにかけてみると >>> bt 10 #0…
C言語のmainでめちゃくちゃできる、ってネタみたけど別にDでもできるよな。 main is usually a function はでないけど。 extern (C) void main() pure nothrow @nogc { asm pure nothrow @nogc { naked; db 0x31; db 0xC0; // xor EAX, EAX; db 0xFF; db 0xC…