void swap(int[]* lhs, int[]* rhs) { *lhs = *rhs; *rhs = *lhs; } int ctfeSort() { int[][2] x; swap(&x[0], &x[1]); return 0; } void main() { enum x = ctfeSort(); } Causes a stack overflow with dmd master (2.054) The same thing happens when using references. void swap(ref int[] lhs, ref int[] rhs) { lhs = rhs; rhs = lhs; } int ctfeSort() { int[][2] x; swap(x[0], x[1]); return 0; } void main() { enum x = ctfeSort(); }
https://github.com/D-Programming-Language/dmd/commit/7ef3b2bb9e740df39108957ae5e3b2aa8253d351 https://github.com/D-Programming-Language/dmd/pull/284
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル