英語版
このページの英語版を見る

変更履歴: 2.109.1

以前のバージョン:

Download D 2.109.1
リリース日:2024年7月1日

2.109.1には1つの大きな変更と5つの修正されたBugzillaの問題が含まれている。 2.109.1を可能にした 7人の貢献者 に感謝の意を表したい。

コンパイラの変更により、

  1. bool 0または1以外の値は、@safe

D 2.109.1 のすべてのバグ修正と機能強化の一覧

コンパイラの変更

  1. bool 0または1以外の値は無効である。@safe

    仕様が更新され、bool に対しては 0 と 1 のみが 安全な値 となった。これは、bool の値を読み取る際に、そのバイト表現の 他のビットが設定されている場合は、処理系定義となり、回避すべきであることを意味する。したがって、

    • void @safe のコードでは、ブール型の初期化は非推奨となった。
    • @safe コードでは、bool フィールドを共用体から読み取ることは非推奨となった。

    bool[] への実行時配列のキャストは まだ非推奨になっていない

    codecode

D 2.109.1 のすべてのバグ修正と機能強化の一覧:

DMDコンパイラのバグ修正

  1. Bugzilla 24602: 内部コンパイラエラー:連想配列の静的初期化を検出できなかった

DMDコンパイラのバグ修正

  1. Bugzilla 24566: 実行時の値で始まり、コンパイル時の配列を使用する条件では、"short circuit"(ショートサーキット)しない
  2. Bugzilla 24596: Rebindable2がオブジェクトを破損する

DMDコンパイラの機能強化

  1. Bugzilla 24595: OpenBSD: .init_array/.fini_array を使用
  2. Bugzilla 24597: FreeBSD/OpenBSD: ELF_COMDATを有効にする

このリリースへの貢献者 (7)

このリリースを可能にしてくれた素晴らしい人たちすべてに、心からの感謝を捧げたい。

前のバージョン: