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

変更ログ 2.098.1

前バージョン: - 次のバージョン:

Download D 2.098.1
2021年12月19日リリース

2.098.1には106のBugzilla問題が修正されている。 多大なる感謝を 18人の貢献者 に感謝する。

D 2.098.1におけるすべてのバグ修正と機能強化のリスト。

D 2.098.1のすべてのバグ修正と機能強化のリスト:

DMDコンパイラのリグレッション修正

  1. Bugzilla 20133: [REG2.084.0]再帰的CTFE呼び出しでスライスの割り当てが不正になる。
  2. Bugzilla 20236: with(X)ブロック内の関数呼び出しで、Xがこのターゲットに非推奨のエイリアスを持つ場合に、偽の非推奨警告が発生する。
  3. Bugzilla 20860: OpDispatchがコンストラクタとデストラクタを持つ構造体に対して機能しない。
  4. Bugzilla 20998: 静的構造体の初期化でエラーが発生すると、後続のメンバの位置がおかしくなり、余計なエラーが発生する。
  5. Bugzilla 21039: alias this 、配列イニシャライザに入れるとref型は'null'を返す。
  6. Bugzilla 21073: クラスがinoutプロパティに"@property"というエイリアスを持つ場合、Rebindableが機能しない。
  7. Bugzilla 21380: auto refを使用するとコンパイラがクラッシュするケース
  8. Bugzilla 21414: 不変のコンストラクタで "non-constant expression "エラーが発生する。
  9. Bugzilla 21438: CTFEでの構造体内静的配列のコンパイラセグメンテーションフォールト。
  10. Bugzilla 22004: [REG2.097] エラー:void の関数の戻り値の型推論が不一致である。noreturn
  11. Bugzilla 22151: 関数に代入しようとするとコンパイラがクラッシュする。
  12. Bugzilla 22300: -checkaction=context [REG 2.098-rc.2]sharedopCast を持つ 型のコンパイルに失敗した。
  13. Bugzilla 22385: CTFEが"列挙型"への暗黙の変換でインデックス化された連想配列の反復処理に失敗する。
  14. Bugzilla 22410: [REG2.094] デフォルト引数を持つタプル引数を持つ関数が、修飾子があると失敗する。
  15. Bugzilla 22420: [REG2.098] エイリアスに関するCTFEの明らかなリグレッション
  16. Bugzilla 22472: void 以外の関数からのvoid 戻り値のエラーメッセージが無効である。
  17. Bugzilla 22512: importC: 不完全な配列型はイニシャライザを持たなければならない。
  18. Bugzilla 22514: (このエラーは、"値"が"エラー"である場合に発生する。
  19. Bugzilla 22516: 構造体イニシャライザ内の関数リテラルが以前のエラーでセグメンテーションエラーになる。
  20. Bugzilla 22529: 空の文に関する誤った非推奨表現
  21. Bugzilla 22558: [REG 2.098] エラー: 関数 'core.stdc.stdio.vfprintf' 'pragma(printf)' は、'extern(C) int vfprintf([parameters...], const(char)*, va_list)' でなければならない。
  22. Bugzilla 22570: struct コンストラクタで許容されるフィールドより多くの引数
  23. Bugzilla 22584: importC: Error: 前方宣言にパラメータ名がない場合、'parameter'への参照が未定義である。
  24. Bugzilla 22585: importC: エラー: 変数「var」の外部シンボルは初期化子を持つことができない。
  25. Bugzilla 22592: importC: 実行時のグローバル配列のインデックス付けのセグメンテーションフォールト
  26. Bugzilla 22593: オーバーロードされたコンストラクタのICE

DMDコンパイラのバグ修正

  1. Bugzilla 16579: ReturnStatement[CallExp(DotVarExp)]:マニフェスト定数伝播のミスでランタイムが破損する
  2. Bugzilla 18054: float 定数の bool への誤ったキャスト
  3. Bugzilla 19660: OSX/Linux グローバルで 'export' キーワードがセグメンテーション・エラーを引き起こす
  4. Bugzilla 21093: [ICE] AssertError@dmd/optimize.d(691):アサーション失敗
  5. Bugzilla 21794: コンパイラ内部のアサーション
  6. Bugzilla 21930: 不正なコードによる ICE (不正な命令)
  7. Bugzilla 21950: cod1:noreturnパラメータのアサーション失敗
  8. Bugzilla 21952: noreturn 型のグローバル変数 / tls 変数に対するアイス
  9. Bugzilla 21957: noreturnを含む共用体のアライメントをdmdが計算する際のice
  10. Bugzilla 22104: importC: パーサーが不完全な要素型を持つ配列を受け付ける
  11. Bugzilla 22315: ImportC "が実装されていない:#pragma packは実装されていない
  12. Bugzilla 22323: DLL内のC++クラスの仮想デストラクタのリンクエラー
  13. Bugzilla 22362: ImportC: 関数スコープで複数の値を持つ複合リテラルの解析エラー。
  14. Bugzilla 22375: ImportC: エラー:C の非配列イニシャライザはまだサポートされていない。
  15. Bugzilla 22376: ImportC: エラー:イニシャライザで定数でない CTFE ポインタを使用できない。
  16. Bugzilla 22388: safeデリゲートに選択されたオーバーロードが正しくない。
  17. Bugzilla 22389: noreturn 関数は正常に返すことができる。
  18. Bugzilla 22398: importC: Error: unknown, when compiling source with non-constant initializer.
  19. Bugzilla 22399: importC: エラー: コンパイル時に静的変数を読み込むことができない。
  20. Bugzilla 22400: importC: 型定義されたイニシャライザーでソースをコンパイルする際のエラー。
  21. Bugzilla 22402: importC: エラー: ポインタから '__tag2[1]' を減算できない。
  22. Bugzilla 22403: importC: Error: int型の引数'0'をパラメータ'const(char)*'に渡すことができない。
  23. Bugzilla 22405: importC: Error: 'const' 式 '(*s).field' を変更できない。
  24. Bugzilla 22406: importC: Error: 'default' のない 'switch' ステートメント; 'final switch' を使用するか、'default: assert(0);' を追加するか、'default: break;' を追加する。
  25. Bugzilla 22407: importC: Error: 'extern (C) int(int a)' 型の式を 'const(extern (C) int function(int))' に暗黙的に変換できない。
  26. Bugzilla 22409: importC: [ICE] Error: 前方参照のため構造体のサイズがない。
  27. Bugzilla 22411: importC: Error: 'const(char*)' 型の式を 'char*' 型に暗黙的に変換できない。
  28. Bugzilla 22413: importC: エラー: 配列インデックス0が範囲外である。
  29. Bugzilla 22422: importC: 関数パラメーターの後にあるgnu属性を解析する。
  30. Bugzilla 22428: importC: 静的変数/関数がグローバルシンボルを生成する。
  31. Bugzilla 22432: ImportC: 括弧で囲まれた式のpostfix演算子のtypedef型へのキャスト結果が正しく解析されない。
  32. Bugzilla 22461: OpenBSD:fmodl を使う
  33. Bugzilla 22462: OpenBSD: bash は /usr/local にある。
  34. Bugzilla 22463: OpenBSD:32-bit OpenBSD 上で DMD が動作するようにした。
  35. Bugzilla 22500: ImportC: tomlc99 のコンパイル時にエラーが多発する。
  36. Bugzilla 22513: ImportC: 構造体のメンバのアドレスがコンパイル時に取得できない。
  37. Bugzilla 22517: [REG 2.093][ICE] dmd/lexer.d:398でバスエラーが発生した。
  38. Bugzilla 22530: クラス間の明示的なキャストが誤ってCTFE内の'alias this'を経由する
  39. Bugzilla 22531: importC: 関数の内部で関数の前方宣言に適用されるD名のマングリング
  40. Bugzilla 22534: ImportC: constポインタ(constへのポインタではない)が推移的constとして扱われる。
  41. Bugzilla 22538: importC: 関数'func'と関数'func'が、前方宣言で static を使用した場合に衝突する。
  42. Bugzilla 22549: ImportC: floatリテラルは先行ゼロをサポートすべきである。
  43. Bugzilla 22560: ImportC: 関数の外では余分なセミコロンは許されない。
  44. Bugzilla 22573: Illumos/SolarisでのDMDコンパイラー・エラー
  45. Bugzilla 22576: ImportC: S型配列のS(0)式を暗黙的にint型に変換できない。
  46. Bugzilla 22577: ImportC: typedefされたconst関数ポインタへの関数の崩壊がICEを引き起こす。
  47. Bugzilla 22589: importC: エラー: '__builtin_va_start' と '__builtin_va_end' への未定義の参照。
  48. Bugzilla 22591: importC: Cソースのデバッグ情報にDW_AT_languageがDに設定されている。
  49. Bugzilla 22597: importC: __builtin_va_start で va_list を初期化するセグメンテーションフォールト
  50. Bugzilla 22602: ImportC: エラー: 文字列リテラルを'void*'に変換できない。

DMDコンパイラの機能強化

  1. Bugzilla 22474: OpenBSD:test/runnable/dhry.d にサポートを追加した。
  2. Bugzilla 22475: OpenBSD で test/compilable/cdcmp.d を無効にする:OpenBSD で test/compilable/cdcmp.d を無効にする。
  3. Bugzilla 22476: OpenBSD:fail_compilation/fail21227_win.d の無視リストに OpenBSD を追加。
  4. Bugzilla 22477: OpenBSD: OpenBSD を fail_comilation/fail21227_win.d の無視リストに追加:fail_compilation/fail3753.d 無視リストに追加。
  5. Bugzilla 22478: OpenBSD: fail_comilation/fail3753.d に追加:fail_compilation/invalid_lib.d に追加。

Phobos リグレッションの修正

  1. Bugzilla 16705: [REG2.069] TaskPool.reduceがコンパイルに失敗する "cannot get frame pointer to D main"

Phobos のバグ修正

  1. Bugzilla 22458: OpenBSD:std/system.d の OS リストに OpenBSD を追加した。
  2. Bugzilla 22487: Array!T.init.dataのクラッシュ

phobosの機能強化

  1. Bugzilla 22393: OpenBSD:x86 用の polyImpl 実装を追加。
  2. Bugzilla 22488: データは定数/不変の配列で動くべきである。
  3. Bugzilla 22511: テンプレート型が精巧なコピークータを持つ場合、Nullableはコピー可能ではない
  4. Bugzilla 22557: std.trait.fqnTypeがtypeof(null)をサポートしていない。

Druntimeリグレッションの修正

  1. Bugzilla 21656: [REG2.091] 例外が文字列化される際に誤ったファイルが読み込まれ、SIGBUSになる。
  2. Bugzilla 22210: 相互再帰クラスのstd.meta.allSatisfyがコンパイルできない。
  3. Bugzilla 22235: core.demanglenoreturn

Druntimeのバグ修正

  1. Bugzilla 21919: darwin:OSX 11でのcore.threadテストのSEGV
  2. Bugzilla 22416: polyImplの実装を統一した
  3. Bugzilla 22440: OpenBSD:sysctl.d の同期
  4. Bugzilla 22443: OpenBSD: syctl.d を同期:MAP_STACK の追加による Fiber サポートの修正。
  5. Bugzilla 22453: OpenBSD:AI_V4MAPPED にダミー値を追加。
  6. Bugzilla 22455: posix.mak の DISABLED_TESTS の無駄な条件代入を削除した。
  7. Bugzilla 22456: OpenBSD: timer_* 関数が OpenBSD に存在しない。
  8. Bugzilla 22485: OpenBSD:core.sys.openbsd.unistd のインポートを修正。

Druntimeの機能強化

  1. Bugzilla 22395: OpenBSD:string.d と unistd.d に OpenBSD 固有の関数プロトタイプを追加。
  2. Bugzilla 22439: OpenBSD:mman.d を同期。
  3. Bugzilla 22448: OpenBSD:OpenBSD 固有の alloc および free 関数のプロトタイプを stdlib.h から追加。
  4. Bugzilla 22454: OpenBSD:pthread_np.h のプロトタイプを追加した。
  5. Bugzilla 22457: OpenBSD: runtime.d の opApply に enableDwarf を追加。
  6. Bugzilla 22542: バックトレースの結果を明示的に int にキャストするようにした。
  7. Bugzilla 22545: OpenBSDの場合:常にシステムのバックトレースを使用するようにした。

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

このリリースを可能にしてくれたすべての素晴らしい人々に多大な感謝を捧げる。

前バージョン: - 次のバージョン: