D 更新履歴 (Nov 7 2005 まで)
- D 0.139 での変更点
- D 0.138 での変更点
- D 0.137 での変更点
- D 0.136 での変更点
- D 0.135 での変更点
- D 0.134 での変更点
- D 0.133 での変更点
- D 0.132 での変更点
- D 0.131 での変更点
- D 0.130 での変更点
- D 0.129 での変更点
- D 0.128 での変更点
- D 0.127 での変更点
- D 0.126 での変更点
- D 0.125 での変更点
- D 0.124 での変更点
- D 0.123 での変更点
- D 0.122 での変更点
- D 0.121 での変更点
- D 0.120 での変更点
- D 0.119 での変更点
- D 0.118 での変更点
- D 0.117 での変更点
- D 0.116 での変更点
- D 0.115 での変更点
- D 0.114 での変更点
- D 0.113 での変更点
- D 0.112 での変更点
- D 0.111 での変更点
- D 0.110 での変更点
- D 0.109 での変更点
- D 0.108 での変更点
- D 0.107 での変更点
- D 0.106 での変更点
- D 0.105 での変更点
- D 0.104 での変更点
- D 0.103 での変更点
- D 0.102 での変更点
- D 0.101 での変更点
- D 0.100 での変更点
- D 0.99 での変更点
- D 0.98 での変更点
- D 0.97 での変更点
- D 0.96 での変更点
- D 0.95 での変更点
- D 0.94 での変更点
- D 0.93 での変更点
- D 0.92 での変更点
- D 0.91 での変更点
- D 0.90 での変更点
- D 0.89 での変更点
- D 0.88 での変更点
- D 0.86 での変更点
- D 0.82 での変更点
- D 0.81 での変更点
- D 0.80 での変更点
- D 0.79 での変更点
- D 0.78 での変更点
- D 0.77 での変更点
- D 0.76 での変更点
- D 0.75 での変更点
- D 0.74 での変更点
- D 0.73 での変更点
- D 0.72 での変更点
- D 0.71 での変更点
- D 0.70 での変更点
- D 0.69 での変更点
- D 0.68 での変更点
- D 0.67 での変更点
- D 0.66 での変更点
- D 0.65 での変更点
- D 0.64 での変更点
- D 0.63 での変更点
- D 0.61 での変更点
- D 0.59 での変更点
- D 0.58 での変更点
- D 0.57 での変更点
- D 0.56 での変更点
- D 0.55 での変更点
- D 0.54 での変更点
- D 0.53 での変更点
- D 0.52 での変更点
- D 0.51 での変更点
- D 0.50 での変更点
- D 0.49 での変更点
- D 0.48 での変更点
- D 0.47 での変更点
- D 0.46 での変更点
- D 0.45 での変更点
- D 0.44 での変更点
- D 0.43 での変更点
- D 0.42 での変更点
- D 0.41 での変更点
- D 0.40 での変更点
- D 0.39 での変更点
- D 0.38 での変更点
- D 0.37 での変更点
- D 0.36 での変更点
- D 0.35 での変更点
- D 0.34 での変更点
- D 0.32 での変更点
- D 0.30 での変更点
- D 0.29 での変更点
- D 0.28 での変更点
- D 0.27 での変更点
- D 0.26 での変更点
- D 0.25 での変更点
- D 0.24 での変更点
- D 0.23 での変更点
- D 0.22 での変更点
- D 0.20 での変更点
- D 0.19 での変更点
- D 0.16 での変更点
- D 0.15 での変更点
- D 0.11 での変更点
- D 0.10 での変更点
- D 0.07 での変更点
- D 0.04 での変更点
- D 0.03 での変更点
- D 0.02 での変更点
- D 0.01 での変更点
- D 0.00 での変更点
- Win32 及び x86 linux 用 D コンパイラ をダウンロード
- tech support
D 0.139 での変更点
Nov 7, 2005
バグ修正
- D.bugs/5329 修正
- D.bugs/5330 修正
D 0.138 での変更点
Nov 2, 2005
新しい/変更のあった機能
- "string"[constant] の定数畳み込みを実装
- "string"[constant .. constant] の定数畳み込みを実装
- --help コマンドラインスイッチを追加
- std.math2.poly を廃止。替わりに std.math.poly を使います
DDoc
- Jarrett Billingsley の提案による、 構造体やモジュールなどのカスタムラッパ D.announce/1705 を実装
- D.learn/2070
ドキュメント
- D.bugs/5202 修正
バグ修正
- std.math.lgamma と tgamma を修正
- D.announce/1730 修正
- D.bugs/5198 修正
- D.bugs/5199 修正
- extern (C) 関数から構造体を返す場合の Linux C ABI との互換性バグを修正。これによって既存のコードは そのままでは動作しなくなる可能性があります。
D 0.137 での変更点
Oct 24, 2005
新しい/変更のあった機能
- 暗黙の型推論 を追加
- 変数に対する extern 記憶クラスが動作するようになりました。
- ネスとした関数に対する extern(linkage) が動作するようになりました。
ドキュメント
- Unknown W. Brackets の提案 D.bugs/5137, D.bugs/5147 に従い文法を修正
- D.bugs/4862 修正
- D.bugs/4972 修正
- D.bugs/5098 修正
- D.bugs/5172 修正
バグ修正
- D.gnu/1472 修正
- D.bugs/5171 修正
D 0.136 での変更点
Oct 17, 2005
新しい/変更のあった機能
バグ修正
- D.bugs/4533 修正
- D.bugs/4769 修正
- D.bugs/4882 修正
- D.bugs/4985 修正
- D.bugs/5015 修正
- D.bugs/5016 修正
- D.bugs/5076 修正
- D.bugs/5082 修正
- D.bugs/5083 修正
- D.bugs/5111 修正
- D.bugs/5115 修正
- D.bugs/5130 修正
- D.bugs/5143 修正
D 0.135 での変更点
Oct 2, 2005
新しい/変更のあった機能
Ddoc
- 色づけ構文 を導入!
- 汎用のドキュメントを処理する機能を追加
バグ修正
- D/28888 修正
D 0.134 での変更点
Sep 28, 2005
新しい/変更のあった機能
Ddoc
- マクロ引数 $1 .. $9 と、特殊マクロ $+ を追加
- 標準的なセクションそれぞれにカスタムの DDOC_ マクロを持つようになりました
- Bob W の 提案 を組み込み
バグ修正
- .ddoc ファイルの終端に改行文字が必須となっていたバグを修正
- D.announce/1563 修正
- D.announce/1598 修正
D 0.133 での変更点
Sep 24, 2005
新しい/変更のあった機能
- std.math に Cのmath.h の関数を補充
- オブジェクトファイルを生成させなくする -o- フラグを追加
Ddoc
- /******* コメント ***********/ の前後の * を除くようにしました
- セクション名の '_' を ' ' に置き換えるようにしました (Derek Parnell のアイデア).
- Derek Parnell の案に基づいて、マクロの動作を大きく変更。 柔軟性が大きく向上しました。
バグ修正
- D.bugs/5045 修正
- D.announce/1564 修正
D 0.132 での変更点
Sep 19, 2005
新しい/変更のあった機能
- D言語用ドキュメント生成ツール Ddoc を追加
D 0.131 での変更点
Sep 8, 2005
新しい/変更のあった機能
Bugs Fixed
- Linuxでの行番号生成のバグを修正
- D.announce/1467 修正
- D.announce/1483 修正
D 0.130 での変更点
Sep 6, 2005
新しい/変更のあった機能
- Don Clugston による std.math.feqrel() を追加
- Ben Hinkle による std.stream の更新:
- 全ての非推奨の機能(stdin/out/err と Error 例外 digitalmars.D/27364)を廃止
- BufferedStream, EndianStream, SliceStream の基底クラスとして、新しく FilterStream を追加
- File.available のオーバーロードを追加: digitalmars.D/27684
- D.bugs/4711 修正
- HTMLドキュメントにフィルタについて加筆: digitalmars.D.announce/1102
- Ben Hinkle による D.bugs/4550 での std.mmfile への更新
- Windowingに対応
- サイズ指定の引数を size_t から ulong へと変更
- デバッグ用 printf をコメントアウト
- 単体テストを追加
- ヘルプを更新
バグ修正
- D.bugs/4684 修正
- D.bugs/4634 修正
- D.bugs/4818 修正
- D.bugs/4696 修正
- D.bugs/4750 修正
- D.bugs/4699 修正
- D.bugs/4726 修正
- D.bugs/4761 修正
- D.bugs/4765 修正
- D.bugs/4768 修正
- DMDScript/174 修正
D 0.129 での変更点
Aug 5, 2005
新しい/変更のあった機能
- 文字列リテラルに、型を示す接尾辞 c, w, d を追加
- Linux版では、Dwarfデバッグ情報の DW_AT_language として、 DW_LANG_D を使うようになりました。 -gc スイッチを指定すると、古いGDB向け DW_LANG_C を使用します。
- Ben Hinkle による、新しい std.format を取り込み。 一般の配列のprintが可能になりました。
- David L. Davis と Ben Hinkle による std.stdio.writefx, std.stream.writefx を追加
- Ameer Armaly の std.c.linux.linux の改良 を取り込み
バグ修正
- 構造体のアクセス権チェックを実装
- D.bugs/4555 修正
D 0.128 での変更点
Jul 10, 2005
新しい/変更のあった機能
- Ameer Armaly による std.file.exists() の改善 を取り込み。
- Ben Hinkle による stream.d と std_stream.html の更新: D/26073 で議論されたように、 scanf と vscanf は readf と vreadf へと改名および変更されました (ドキュメントも同時に更新済みです)。
バグ修正
- Ben Hinkle による D.bugs/4335 の修正。 特に、readLine のドキュメントの修正です。 また、writef と writefln の返値型を修正しました。
- D/26224 修正
- D.bugs/4472 修正
- D.bugs/4377 修正
- D.bugs/4409 修正
- D.bugs/4296 修正
- D.bugs/4382 修正
- D.bugs/4386 修正
- D.bugs/4396 修正
- D.bugs/4398 修正
- D.bugs/4413 修正
- etc/c/zlib/inftrees.c に バッファオーバーフローの修正 を適用
D 0.127 での変更点
Jun 16, 2005
新しい/変更のあった機能
- version識別子とdebug識別子の前方参照を不可としました。
バグ修正
- D.bugs/4185 修正
- D.bugs/4246 修正
- D.bugs/4239 修正
- D.bugs/4249 修正
- D.bugs/4299 修正
- D.bugs/4153 修正
- D.bugs/4161 修正
- D.bugs/4240 修正
- D.bugs/4248 修正
- D.bugs/4300 修正
- D.learn/1073 修正
D 0.126 での変更点
Jun 7, 2005
新しい/変更のあった機能
- === は非推奨になりました。代わりに is を使ってください。
- !== は非推奨になりました。代わりに !is を使ってください。
- 型安全・可変個引数関数 を追加
- 連想配列に存在しないキーを指定してアクセスしたときに、 ArrayBoundsError例外を投げるように変更しました。 これまではそのキーが配列に自動で追加されていました。
- IsExpression を追加し、 IftypeCondition を非推奨としました。 IsExpression の方がより一般的で強力です。
- Void初期化子 を追加
- delete aa[key] は非推奨になりました。代わりに aa.remove(key) を使ってください。
- 非staticネストクラス を追加
- 無名非staticネストクラス を追加
- Ben Hinkle による std.stream の変更を取り込み:
- std.stream.stdin/out/err を非推奨に
- std.cstream.din/out/err 追加
- stream.d:
- socketstream にあったreadLineでの行末 \r の処理を行うコードを、 パイプのようなSeek不可能ストリーム用に統合
- getc と getcw をEOFで char.init や wchar.init を返すよう変更
- getcwを、1byte読んだ後EOFがあると例外を投げるように変更
- ungetc と ungetcw が char.init と wchar.init を無視するよう変更
- stdin,stdout,stderr を非推奨に
- std.c.stdio の private import と、 va_list の alias を除去
- socketstream.d: std.stream.Stream にあるオーバーライドを除去
- cstream.d: din, dout, derr による FILE* の新しいラッパー。
- unittest.d: 単体テストの実行を保証するため cstream を追加
バグ修正
- Internal error: e2ir.c 488 修正
- David Friedman による std.base64 へのパッチを取り込み
- D.bugs/4178 修正
- evilmrhenry の修正を D.bugs/4215 から取り込み
- std.math.tan がオペランドを FPU スタックに残してしまうことがあったバグを修正
D 0.125 での変更点
May 20, 2005
新しい/変更のあった機能
バグ修正
- iftype を修正して、特殊化へのマッチは、 完全マッチだけでなく暗黙の変換が可能なマッチも許すことにしました。
- D.bugs/4075 修正
- Ben Hinkle による D.learn/873 修正
- phobos/internal/gc _d_newarrayi() を std.c.stdarg を使うように修正
D 0.124 での変更点
May 19, 2005
新しい/変更のあった機能
- -quiet スイッチを dmd に追加
- .size プロパティは非推奨ではなく、エラーとなりました。 .sizeof に置き換えてください。
- DMDのソースの debcond.h を cond.h に、debcond.c を cond.c に改名
- Burton Radons の std.boxer を追加
- ドキュメントを少し色などを入れて整形
- static if 追加
- iftype 追加
バグ修正
- #line が再度バグっていたのを修正
- 0除算でのコンパイラクラッシュを修正
- Ben Hinkle による D.bugs/3982 修正
- D.bugs/3981 修正
- D.bugs/3968 修正
- D.bugs/3975 修正
- D.bugs/3999 修正
D 0.123 での変更点
May 11, 2005
新しい/変更のあった機能
- 静的配列の最大サイズを16Mbに制限。
バグ修正
- #line の引数に __LINE__ が使えるようにしました
- メンバに 'alignof' という名前をつけることを不可としました
- エラーメッセージの行番号抜けを幾つか修正
- インターフェイスの循環継承に関する別の問題を修正
- internal error cod1 2433 修正
- internal error cgcs 353 修正
- dstress auto_07 修正
- dstress array_initialization_06 修正
- dstress array_initialization_08 修正
- dstress array_initialization_10 修正
- dstress typeid_13 修正
- D.bugs/2162 修正
- D.bugs/3386 修正
- D.bugs/3571 修正
- D.bugs/3691 修正
- D.bugs/3712 修正
- D.bugs/3713 修正
- D.bugs/3791 修正
- D.bugs/3792 修正
- D.bugs/3812 修正
- D.bugs/3818 修正
- D.bugs/3844 修正
- D.bugs/3896 修正
- D.bugs/3897 修正
- D.bugs/3898 修正
- D.bugs/3900 修正
D 0.122 での変更点
May 3, 2005
新しい/変更のあった機能
- Ben Hinkle による std.stream の修正を取り込み:
- 標準入力がパイプの時の、seekable のバグを修正
- InputStream に isOpen と eof を追加
- OutputStream に isOpen と flush と close を追加
- David L. Davis による std.conv.toFloat, toDouble, toReal を追加
バグ修正
- エラーメッセージの行番号表示を改善
- コンパイル時の配列外アクセスの検出処理を修正
- コンパイラのメモリ不足時の動作を改善
- DMDScript のビルドが通らなくなっていたのを修正
- array[length..length] でメモリが破壊される問題を修正
- 上位のinvariantでコンパイラがセグメント違反を起こす問題の修正
- インターフェイス循環派生の検出コードの問題を修正
- 静的配列の連結の修正
- Internal error cg87 1240 修正
- D.bugs/3710 修正
- D.bugs/3747 修正
- D.bugs/3752 修正
- D.bugs/3753 修正
D 0.121 での変更点
Apr 15, 2005
新しい/変更のあった機能
- std.syserror は非推奨になりました。代替は std.windows.syserror です。この機能は Windows 特有の物で、 Linux の strerror() と同列に扱ったのは間違いでした。Windows のエラー番号は Cのerrno変数と同種のものではありません。 適切な実装を提供してくれた Regan Heath に感謝。
- null と配列で三項演算子 ?: が動作するようになりました。
- std.outofmemory.OutOfMemory を std.outofmemory.OutOfMemoryException に変え、 Exception から派生するように変更しました
- abstractクラスメソッドがあるとclass全体もabstractとするようになりました
- 変数や構造体、共用体の宣言に abstract を記述できなくしました
- 構造体と共用体に単体テストが記述可能になりました
バグ修正
- zwang による std.string.ifind() の修正を追加
- 0除算の定数畳み込みのバグを修正
- std.regexp での "Win32 Exception" を修正
- 嘘の "switch statement already has a default" のバグを修正
- D.bugs/2991 修正
- D.bugs/3002 修正
- D.bugs/3034 修正
- D.bugs/3091 修正
- D.bugs/3129 修正
- D.bugs/3551 修正
- D.bugs/3597 修正
- D.bugs/3646 修正
- 配列,静的配列,連想配列,関数ポインタ,delegate,列挙型の typeinfo を実装
- typedef による型の typeinfo を修正
- real型やimaginary型から complex型への誤った暗黙変換を修正
- pragma のエラーメッセージ修正
- 関数内での pragma(lib) のバグを修正
- dstress slice_10 修正
- dstress argument_03 修正
- dstress const_04 修正
- dstress foreach_26 修正
- dstress html_empty_entity_03 修正
- dstress invariant_12 修正
- dstress invariant_29, _30, _31 修正
- dstress main_06 修正
- dstress mixin_09 修正
- dstress new_09 修正
- Ben Hinkle の std.stream への修正を取り込み。 dmd-120 でエンバグした seekable stdin と Stream.toString() に関するバグ: D.bugs/3563 を修正。Windowsバージョンでの、 uint.sizeofより大きいサイズのファイルに関するseek()の問題を修正。
D 0.120.2 での変更点
Apr 7, 2005
新しい/変更のあった機能
- -release ビルドの時は、 暗黙の switch defaultと 暗黙の return 文と assert(0) 式を、 HLT 命令で置き換えるようになりました。
- プロファイラを起動するためのコマンドラインスイッチを -gt から -profile に改名
- 複素数型から非複素数型への暗黙の変換を 廃止しました
- 実数型と虚数型の間の暗黙の変換を 廃止しました
- インラインアセンブラに Pentium 4 (Prescott) の命令を追加
- テンプレートalias引数の特殊化が可能になりました
- コンパイラが、 浮動小数点数リテラルの保持や定数畳み込みの計算を、 その型よりも高い精度で行ってもよいことにしました。
- 定義済みバージョン識別子 AMD64 を X86_64 に変更
- Matthew Wilson の std.openrj を追加
- Ben Hinkle による新しい std.stream。
更新点は:
- バッファサイズの型を uint から size_t に変更
- Stream と InputStream に行単位のopAppyを追加 (Regan
Heath による)
int opApply(int delegate(inout char[] line) dg)
int opApply(int delegate(inout ulong n, inout char[] line) dg)
int opApply(int delegate(inout wchar[] line) dg)
int opApply(int delegate(inout ulong n, inout wchar[] line) dg) - readable/writeable/seekable のテストを契約から関数本体へ移動しました。 Phobosはreleaseモードでコンパイルされるため、 ユーザーは簡単に書き込み不可ストリームへ書けてしまっていたためです。
- writef と writefln から "this" を返すようにして、chaining (例. flush) できるように変更
- TArrayStream の read/write で "eof" をチェックするよう修正 (Derick Eddington)
- SliceStream を、元のバッファがシーク可能なら位置を保つように修正し、 isOpen に注意を払うようにしました (Derick)
- より多くのストリームに対し available() を実装 (Derick)
- copyFrom のバグ修正と、シーク可能なら位置を保つように変更 (Derick)
- BOM の初期化をモジュールコンストラクタから初期化関数に移動
- isopen を (privateから) protected に変更して、派生クラスから見えるようにしました
- unittest の追加 (Derick と Ben)
- Windows での File.size() のバグを修正
- File.open() のエラーメッセージを "Cannot open or create file" に修正
バグ修正
- mixin のalias引数によるローカルの前方参照によるクラッシュ問題を修正
- bit配列のappendを修正
- 0.119 で混入した基底クラスの前方参照の問題を修正
- デストラクタにおけるthrowの問題を修正
- 境界整列されていない構造体の配列の問題を修正
- 非推奨シンボルに基づく型宣言に対するエラーメッセージの修正
- PEXTRW 命令のコード生成がおかしかったのを修正
- テンプレートalias引数でのコンパイラのハングアップを修正
- Internal error: ..\ztc\cg87.c 279 修正
- Internal error: ..\ztc\cod1.c 1648 修正
- Internal error: ..\ztc\cgobj.c 2139 修正
- Internal error: ..\ztc\cgcs.c 353 修正
- Assertion failure 622 glue.c 修正
- 循環typedef宣言でのコンパイラのクラッシュを修正
- 空のcatchハンドラでのコンパイラのクラッシュを修正
- D.bugs/2606 修正
- D.bugs/2618 修正
- D.bugs/3234 修正
- D.bugs/3369 修正
D 0.119 での変更点
Mar 18, 2005
新しい/変更のあった機能
- 'finally' ブロックの扱いを刷新してより明確にしました
- このバージョンから、Cスタイルのキャストは非推奨ではなく、不正となります
- コメント中の不正なUTF文字列をエラーとするようになりました
- 定義済みversionの再設定をできなくしました
バグ修正
- 文字実体 ‹ のスペルミスを修正
- 数字を含む文字実体の字句解析を修正
- クラス不変条件の呼び出しコードは private, protected, packageメンバ関数には付随しないように修正
- D.bugs/32 修正
- D.bugs/1148 修正
- D.bugs/1815 修正
- D.bugs/1865 修正
- D.bugs/1953 修正
- D.bugs/2042 修正
- D.bugs/2140 修正
- D.bugs/2240 修正
- D.bugs/2262 修正
- D.bugs/2429 修正
- D.bugs/2546 修正
- D.bugs/2934 修正
- struct/union の文法を変更して、 不変条件や単体テスト、アロケータ/デアロケータを書けるようにしました
- 実行時assertで出力されるファイル名と行番号が #line LineNumber FileName での設定を反映するように修正
- aliasを構造体メンバとして持った時のバグを修正
- override が非メンバ関数についていたらエラーを出すようになりました
- Linux でのテンプレート構造体の初期化子コンフリクトバグを修正
- 文字列リテラルを wchar[] や dchar[] に連結できるようになりました
- 内部集成体のメンバから外部集成体へアクセスしようとしたときに、 正しくエラーを出力するようになりました
- Assertion failure: 'cd' on line 1275 in file 'expression.c' を修正
- catch節が前のcatch節によって '隠されて' いた場合エラーを出すようになりました
- void, void[], bit[] の typeid が抜けていたので追加
D 0.118 での変更点
Mar 12, 2005
バグ修正
- 名前マングリングに関するエンバグを修正
- COMDATレコードに関するエンバグを修正
D 0.117 での変更点
Mar 10, 2005
新しい/変更のあった機能
- pragma(lib, "library name"); を追加
- cent と ucent が予約語であることを保証するため、 この二つをキーワードとしました
- 明示的に version=all と設定できなくなりました。 all は常に有効です
バグ修正
- 到達不能コードに関する警告がいい加減だったので修正
- 非仮想関数をabstractと宣言したときエラーを出すようになりました
- クラス全体をabstractと宣言可能になりました
- wprintf を std.c.stdio に戻して追加
- deprecatedクラスのインスタンスを作ろうとすると非推奨メッセージが出るようになりました
- 非推奨要素に使用がチェックされていない場合があったのを修正しました
- goto文で、goto文を囲むswitch文のcaseへも飛べるようになりました
- if(0) ブロックへのgoto文のバグを修正
- Stewart Gordon による std.file.copy() の修正を取り込み
- Assertion failure: '0' on line 720 in file 'statement.c' を修正
- D.bugs/1795 修正
- D.bugs/2737 修正
- D.bugs/752 修正
- D.bugs/1326 修正
- D.bugs/2238 修正
- D.bugs/2275 修正
- D.bugs/2315 修正
- D.bugs/2316 修正
D 0.116 での変更点
Mar 7, 2005
新しい/変更のあった機能
- エスケープシーケンス に 文字実体名 を追加。
- HTML処理部分について、 文字実体名のサポートを改善
- __FILE__, __LINE__, __DATE__, __TIME__, __TIMESTAMP__ を追加
- 配列の [] の中で、length の代わりに $ が使えるようにしました。
$はその配列の長さを表します。試験的な機能です。
問題がなさそうであれば、以下の順で移行していきます:
- length は [] の中では非推奨となります
- 暗黙に配列長を宣言する length は廃止され、 単なる別の識別子として扱われるようになります。
- 試験的に 警告 を導入
- モジュール文で名前をパッケージ名付きで宣言した場合、例えば次のように:
module foo.bar;
すると bar はスコープに入らず foo.bar を使用しなければならなくしました。
バグ修正
- HTML処理に関するエラーをいくつか - エンティティ、行番号、スペース、大文字小文字処理 - 修正
- Mac行末文字処理の修正
- D.gnu/983 bug を修正
- D.bugs/1849 を修正
- 浮動小数点数の配列の typeid が抜けていたので追加
- bitやNaNに対しても配列の.sortプロパティが動作するようになりました
- 返値voidの関数のreturn文にも式を書けるようになりました
- ネスト関数として main() を定義可能になりました
D 0.115 での変更点
Feb 28, 2005
バグ修正
- std.socketの統合がうまくいっていなかったのを修正
D 0.114 での変更点
Feb 27, 2005
新しい/変更のあった機能
- std.string に合わせて、 std.regexp.RegExp.search を std.regexp.RegExp.find に改名しました。 古い名前は非推奨の alias として残してあります。
- std.regexp に関数 split, find, rfind, sub, search を追加
- std.string に関数 tr, succ, squeeze, removechars, countchars, inPattern, chop, chomp を追加
- Christopher E. Miller による std.socket の修正を取り込み:
IPv6 は未サポートですが、そのためのC用インターフェイスは全て整えました。 C言語関係の部分は socket.d から分離し std.c モジュールに入れてあります。 ソケット関数のほとんどは実際には普通のI/O関数なので、std.c.linux.linux を主に更新しています。他の変更:Protocolクラス と Serviceクラスを追加。 派生クラスがacceptをできるように、Socket.accepting() を追加。 ドキュメント とサンプルの更新。 Linux版の目につくバグを修正。
- オーバーロードされた関数の引数型エラー時のメッセージの改善
- manページを \dmd\man\man1 に追加 (Anders F Bjorklund に感謝)
バグ修正
- Linux版の std.format %A の unittest 失敗を修正
- proxy static constructor の初期化順序の問題を修正
- v.init が v を初期化してしまうことのあったバグを修正
- 複数バイト文字列に関して char[] と wchar[] の .reverse にバグがあったので修正
- const初期化子に関する定数畳み込みの様々なバグを修正
- Internal error: ../ztc/cod4.c 352 の修正
- Assertion failure: 'ta' on line 1481 in file 'template.c' の修正
- Assertion failure: 'f' on line 3005 in file 'expression.c' の修正
- Assertion failure: 'ids->vthis' on line 394 in file 'inline.c' の修正
- Assertion failure: '0' on line 909 in file 'func.c' の修正
- Assertion failure: '!scopesym || !scopesym->isWithScopeSymbol()' on line 2637 in の修正 file 'mtype.c'
- Assertion failure: 'se2->op == TOKstring' on line 1379 in file 'expression.c' の修正
- Assertion failure: '!needThis()' on line 139 in file 'tocsym.c' の修正
D 0.113 での変更点
Feb 12, 2005
新しい/変更のあった機能
- internal/qsort.d に代えて再配布自由版の internal/qsort2.d を導入しました。
- std.file.copy の追加。
- -unittest オプションがあるときはreleaseビルドでもassertを有効にしました。
バグ修正
- cgcs 353 error の修正
- class C{this(){super();}} での dmd のクラッシュを修正
- cast(int)(.0>>0) での dmd のクラッシュを修正
- enum e; での dmd のクラッシュを修正
- 0==Exception; での dmd のクラッシュを修正
- 初期化子での可変個引数での dmd のクラッシュを修正
- ラベル付き {} 文での dmd のクラッシュを修正
- 前方参照の誤った取り扱いでの dmd のクラッシュを修正
- Internal error: e2ir.c 229 の修正
- Internal error: ..\ztc\cgcod.c 1640 の修正
- Internal error: e2ir.c 141 の修正
- Internal error: ../ztc/elfobj.c 1251 の修正
- Assertion failure: '!needThis()' on line 139 in file 'tocsym.c' の修正
- Assertion failure: 'fdx->vresult' on line 1450 in file 'statement.c' の修正
- Assertion failure: '!deferred.dim' on line 470 in file 'module.c' の修正
- Assertion failure: 'sym->memtype' on line 3020 in file 'mtype.c' の修正
- 悪名高い std.string.toStringz() のバグを修正
D 0.112 での変更点
Jan 26, 2005注: ライブラリのみの変更です。dmdの実行ファイルは 0.111 のものです。
新しい/変更のあった機能
- Windows DLL を作るための新機能
- -gt profiler オプションがLinuxで動作するようになりました。
D 0.111 での変更点
Jan 15, 2005新しい/変更のあった機能
- std.date.toUTCString() を追加
- \uFFFE と \uFFFF を用いるアプリケーションがあるため、 これらを有効なUCS文字として許可するよう変更
- 基数変換用の std.string.toString(long, uint) と toString(ulong, uint) を追加
- Ben Hinkle による Phobos の改善を取り込み:
std.stream と mmfile の改造版と、 ヘルプファイルを添付します。 std.mmfile の更新点は:
- モジュール宣言を std.mmfile に変更
- クラス宣言から auto を外した
- MmFile.Mode型のファイルモードを得るための読込専用プロパティ mMode を追加
- Dave Fladebo によるバッファ付きreadLineのパフォーマンス改善を取り込み
- cfloat/cdouble/creal の read/write に関するエンディアン周りのバグ修正
- MmFileStream のコメントを外して、MmFileのモードプロパティを使うように整理
バグ修正
- std.string.sformat() での .length のバグを修正
- std.date での 1970年以前の日付丸めのバグを修正
- 関数のインライン化と.lengthプロパティに関するバグを修正
- Linuxのpowl()関数のエラーを補正
- doubleからulongへの変換の際の丸めバグを修正
- Linux環境での std.date の夏時間計算の範囲を拡大
D 0.110 での変更点
Dec 30, 2004新しい/変更のあった機能
- 構造体の前方参照が可能になりました
- 構造体が連想配列のキーとして使用可能になりました
- 構造体の配列がsort可能になりました
- 複雑なimportを含むプロジェクトのコンパイル速度が 劇的に向上しました。
- エラー表示後の処理を改善しました
- .sizeof の上書きを禁止しました
バグ修正
- クラスの外でのsuperやthisの使用に関するバグを再度修正
- internal error cod1 2729 を修正
- コンパイルエラー時にはオブジェクトファイルを削除するようになりました
- プロパティが認識されない場面が幾つかあったのを修正
- クリティカルセクションの解放時にフリーズする可能性があったのを修正
- 'in' 式の返すポインタ値のバグを修正
- 配列初期化のコード生成のバグを修正
- std.uri.encodeComponent() のアクセス違反を修正
D 0.109 での変更点
Dec 5, 2004新しい/変更のあった機能
- 'this'ポインタを必要としないときも super.識別子 と this.識別子 が動作するようになった
バグ修正
- 複素数の点数畳み込みの問題を修正
- クラスメンバの初期化のバグを修正
- bit型のsizeofでのコンパイラの一般保護違反を修正
- いくつかの前方参照に対するエラーを正しく出力するように修正
- テンプレートを変数として誤って使った際のエラー回復の修正
- internal error e2ir 1158 の修正
- Assertion failure: '0' on line 661 in file 'expression.c' の修正
- () を省略した同期プロパティ呼び出しの問題を修正
D 0.108 での変更点
Nov 30, 2004バグ修正
- mangoライブラリがビルド失敗するようになっていたのを修正
D 0.107 での変更点
Nov 29, 2004新しい/変更のあった機能
- writef() の速度を改善
- Dave Fladebo の提案を採用して、シングルスレッド時の GC のメモリ確保のパフォーマンスを改善。
- InExpressionは、bit を返す代わりに、 keyが存在すれば連想配列の要素へのポインタを、存在しなければ null を返すようになりました。 これによって二重の検索処理は不要になります。
- .offset は非推奨となりました。代わりは .offsetof です。 これによって、offset をフィールド名として使っている C プログラムとの互換性が向上します。
- 配列に .ptr プロパティを追加。 配列からポインタへのキャストよりも簡単で、型安全です。
- Ben Hinkle による std.stream の変更を追加:
- BOMとエンディアンのサポートのために EndianStream を追加
- std.string と std.file を public に importしていたものを除去
- InputStream と OutputStream に ifloat, idouble, cfloat, cdouble, dchar の read/write インターフェイスを追加し、Stream と EndianStream に実装を追加。
- std.c.stddef に C の wchar_t の定義を追加
バグ修正
- internal error e2ir 814 を修正
- 暗黙のコンストラクタの保護の問題を修正
- deprecated属性によるstaticの上書きを修正
- 大きい定数が 暗黙の変換で小さすぎる型へと変換される可能性のチェックを強化。
- switch文でcase文字列の重複を検出するように変更
- switch(dchar[])文をサポート
- B.O.M.のないソースの読み込みバグを修正
- クラス内の無名構造体の初期化バグを修正
- 無名構造体/共用体は、 集成体のメンバとしてのみ使用可能となりました。
- assertがoffの時は、副作用のある assert 式も実行されないようになりました。 assert式の副作用に依存するのは不正なコードです。
- TypeInfoクラスの接頭辞 _init と __init の修正。
- 算術変換ルールをC99に適合するように修正。
D 0.106 での変更点
Nov 9, 2004新しい/変更のあった機能
- Linuxでの std.c.time.CLOCKS_PER_SEC を 1000 から 1000000 へと変更
- 常にセットされるバージョン識別子 all を追加
- バージョンとして 定義済みバージョン識別子 を指定するのはエラーとなりました
- TypeInfoClass を TypeInfo_Class へ変更
- TypeInfoTypedef を TypeInfo_Typedef へ変更
- Matthew Wilson による std.process の改良を取り込み
バグ修正
- internal error s2ir 458 を修正
- Assertion failure: 64 tocvdebug.c を修正
- EAX引数のコード生成のエラーを修正
- バージョン分岐の構文検査の修正
- 定数からbitへのキャストの修正
- 同じ型aliasの複数回の宣言を検出するようになりました
- new式でのpriveteコンストラクタのアクセス権チェックを行うようになりました
- 無名構造体/共用体もフィールド以外のメンバが持てるようになりました
- 非トップレベルのクラスもモジュールのクラス一覧に追加されるようになりました
- クラスオブジェクトとtypedef型に対する %o と %b 書式に関する std.format のバグを修正
- ループ不変値に関する最適化バグを修正
- Linuxでのsynchronized文の修正
D 0.105 での変更点
Oct 28, 2004新しい/変更のあった機能
- 整数型の決定方法を C99 6.4.4.1 に合うように変更。
バグ修正
- David Friedman の、静的初期化子に関する修正を取り込み
- David Friedman の、 bit配列の複製と追記に関する修正を取り込み
- David Friedman の、整数定数からbitへのキャストに関する修正を取り込み
- Stewart Gordon の switcherr.d と array.d への修正を取り込み
- dmd のコマンドライン解析のバグを幾つか修正
- Assertion failure: 'ei' line 2576 file 'mtype.c' を修正
- Ivan Senji による、コンパイラクラッシュバグの2つの修正
- Internal error: ..\ztc\cod3.c 736 の修正
- templateの前方参照のエラーメッセージを修正
- foreachでの識別子の宣言忘れの際のエラーメッセージを修正
- mixin コンストラクタのバグを修正
- ユーザーコードとの衝突を避けるため、内部で使用していた "_invariant" を "__invariant" に変更
- utf文字列の変換でdmdがフリーズすることがあったバグを修正
- synchronized文の引数としてインターフェイスを渡すと、 自動でObjectへキャストするようにしました
D 0.104 での変更点
Oct 21, 2004バグ修正
- 未知の CV version でのリンカのバグを修正。
D 0.103 での変更点
Oct 20, 2004新しい/変更のあった機能
- Win32版でのシンボリックデバッグ情報生成の改善
- Linux版で、Dwarf2 行番号情報を付加
- Dave Fladebo による連想配列の高速化
バグ修正
- Phobos内の重複したMAP_FAILEDの宣言を除去。
- コード生成期のスケジューリングバグを修正。
- Dave Fladebo によるLinux用Phobosのmakefileの改善を取り入れました。
- David Friedman による std.thread の停止バグの修正を取り入れました。
D 0.102 での変更点
Sep 20, 2004新しい/変更のあった機能
- etc.c.zlib を 1.2.1 にバージョンアップ。(Sean Kellyに感謝)
- 配列のappend操作のパフォーマンスを改善。(Dave Fladeboに感謝)
- \dmd\bin\make.exe を追加。
- Phobos の makefileの改善。
バグ修正
- privateモジュールのコンストラクタ呼び出し順序の修正。
- Dave Fladebo による std.zlib の修正を組み込み。
- Linuxでの配列のappend時のセグメント違反を修正。
- COMDATが複数のモジュールに存在できなかった問題の修正。
- constフィールドを左辺値として使おうとした時のセグメント違反を修正。
- Internal error: ../ztc/cod1.c 2498 の修正。
- Internal error: e2ir.c 447 の修正。
- 空のdebug文で引き起こされるセグメント違反を修正。
- 未定義の修飾型によって引き起こされるセグメント違反を修正。
- 算術式中のvoidに関するエラー回復処理の修正。
- assertion failure 1147 in expression.c の修正。
- Internal error: ../ztc/cod2.c 4207 の修正。
- std.file.getcwd の返す配列の末尾に余計な0が含まれていたのを除去。
- make.exe 内の "cd" コマンドの修正。
D 0.101 での変更点
Aug 30, 2004新しい/変更のあった機能
- Ben Hinkle による std.stream の改良を追加。Ben によると: 「std.streamとphobos.htmlを変更した物を添付します。 中身は昨日ニュースグループに投稿したバグ修正と動作の変更です。 バグ修正はほぼ後方互換性を保っていますが、 一番大きな違いは、Windows で FileMode.In でファイルを開こうとしたときに、 ファイルが存在しないとエラーになるとした点です。これによって、 Linux版と同じで自然な動作になると思います。 他に、writef関数の追加や Error の代わりに Exception を使う変更なども行いました。」
- Kris は、version識別子がグローバルに影響してしまい、 しかもそれがモジュールをimportする順番に依存することを指摘しました。 これは明らかに問題です。このバージョンからは、コマンドラインで指定した versionやdebug定義のみがグローバルな効果を持つように変更します。 その他のものは宣言されたモジュール内にのみ影響します。 さらに、versionとdebugの定義はモジュールスコープでのみ可能としました。
バグ修正
- 0.99でエンバグした "super" のバグを修正。
- 'in'の後に関数のbodyが抜けている場合にエラーを出すようになりました。
- 同じ型の関数リテラルを複数使えるようになりました。
- ネストした関数内での 'out' 引数の問題を修正。
- Seg faultを起こす配列初期化の問題を修正。
- 不正なenum構文でコンパイラが一般保護違反を起こすバグ修正。
- Internal error: ..\ztc\cod1.c 3251 を修正。
- FPUスタックオーバーフローバグを修正。
- 浮動小数点数演算の最適化バグを修正。
- 文字列リテラルからUTF-16への変換のバグを修正。
D 0.100 での変更点
Aug 20, 2004バグ修正
- 0.99でエンバグした Internal error: ..\ztc\cgcs.c 213 を修正
- Linuxでの seg fault ENTER 問題をたぶん修正
D 0.99 での変更点
Aug 19, 2004新しい/変更のあった機能
- std.string に関数 ifind() と irfind() を追加 (David L. Davis に感謝)。
- 下限がバイト境界に揃っている場合に限り、 bit配列のスライスをとれるようになりました。
- bit型ポインタのオフセットはbit数単位で表現されるようになりました。 が、必ず8の倍数でなければなりません。
- スタック上の配列の初期化のパフォーマンスを向上。
- std.c.stdlib.alloca() に定数を渡すイディオムを認識するようになりました。
- voidへの暗黙変換を削除。何を考えていたんでしょう?
- setErrno() を std.c.linux.linux から std.c.stdlib に移動。
- setErrno() を std.c.stdlib に追加。
- 'this' をインターフェイス型にキャストするコードの生成効率を改善。
- Index式とスライス式に、暗黙の length の宣言を追加しました。 この変更によって、普通の変数としてlengthが[ ]の内部で使われていた場合、 既存のコードが動かなくなります。
バグ修正
- オーバーロード関連のエラーをいくつか修正
- ~ がbit型の引数でも動作するようになりました
- byte境界にそろっていないbit配列のコピーが、 過剰なコピーを行わないようになりました。
- bitからbyteへのキャストの修正
- interfaceの多重継承時のvtableのディスパッチのバグを修正
- Internal error: ..\ztc\el.c 723 を修正
- mixinの前方参照時の一般保護違反を修正
- Internal error: ..\ztc\dt.c 104 を修正
- Internal error: ..\ztc\cgcod.c 552 を修正
- 不正な初期化子に対するエラー回復を修正
- クラス参照に対する算術演算にエラーメッセージを出すようになりました
- Internal error: ..\ztc\cgcod.c 1464 を修正
- internal error: ..\ztc\cgcs.c 353 を修正
- import時にネストしたテンプレートが展開される際に、 未解決の外部シンボルが出てしまった問題を修正
- 謎の TOK881 メッセージを修正
- const char[]をenum値として使おうとしたときのコンパイラの一般保護違反を修正
- コンパイラのエラー回復の際の一般保護違反を修正
D 0.98 での変更点
Aug 5, 2004新しい/変更のあった機能
- スカラー型を 'new' できるようになりました。例えば:
int* p = new int;
バグ修正
- クラスのインスタンス経由で識別子を探索する際に、 typedef/aliasされたメンバが見つからないバグを修正。
- Berin Loritsch による pi.d の修正を取り込みました
- 再帰的なテンプレートのインスタンス化エラーの検出を改善しました
- 暗黙の変換周りのエラーメッセージを改善
- エラーのあるテンプレートのインスタンス化の際の一般保護違反を修正
- DLL からの D の __import__ シンボルの名前マングリングを修正
- Assertion failure: 267 'declaration.c' を修正
- Internal error: ..\ztc\cgcod.c 1464 を修正
- Assertion failure: 1204 'expression.c' を修正
- Internal error: ..\ztc\cgcs.c 350 を修正
- Internal error: ..\ztc\cod1.c 2244 を修正
- アクセス保護のチェックを、オーバーロード解決の前ではなく、 後に行うようになりました。
- 関数ローカルな構造体の静的初期化子についての一般保護違反を修正
- 未定義の識別子からのエラー回復を修正
- 初期化子のないconst配列での一般保護違反を修正
- Assertion failure: 3154 'mtype.c' を修正
- Assertion failure: 1203 'func.c' を修正
- Internal error: ..\ztc\cg87.c 1968 を修正
D 0.97 での変更点
Jul 26, 2004新しい/変更のあった機能
- 単項プラス演算子のオーバーロード(opPos)を追加しました。
- UTF-16 や UTF-32 のソースコードに BOM が無くても大丈夫になりました。 (Arcane Jillに感謝)
バグ修正
- Linux版で、グローバルシンボルが時々 .o では非公開となってしまっていたバグを修正。
- C関数から小さな構造体を返す関数についての、 Linux版のバグを修正。
- Linux 向けに listdir() を実装。(Christopher E. Miller, Andre Fornaconに感謝)
- deprecated 属性のついた関数から他の deprecated 関数を呼んでもエラーにならなくなりました。
- deprecated 関数のチェックを、オーバーロード解決の前ではなく、 後に行うようになりました。
- インターフェイス関係の前方参照の問題を修正。
- va_arg 周りのコンパイラの一般保護違反を修正。
- std.system の修正 (Thomas Kuehneに感謝)
- 派生クラスでの、メソッドのalias順序の衝突を修正。
- std.utf の修正 (Stewart Gordonに感謝)
D 0.96 での変更点
Jul 21, 2004新しい/変更のあった機能
- std.process に exec*系関数を追加(Matthew Wilsonに感謝)
- std.perf を追加(Matthew Wilsonに感謝)
バグ修正
- クラスの派生関係が循環に対しコンパイラがクラッシュするバグを修正。
- 文字列リテラル中の不正なUTF文字をコンパイル時に検出するようになりました。
- 日付のパーズ処理で、 タイムゾーン指定が一時間単位でなくても処理できるようになりました。
- std.formatでの文字列に対する精度パラメタの扱いが変だったので修正。
- テンプレート内でのautoのバグを修正。
- int[2]x=3; の形の静的初期化を修正。
- 行番号の欠けていたエラーメッセージを幾つか修正。
- aliasの解決の問題を修正。
- tryやsynchronizedブロック中でのbreak/continue文の処理が、 ドキュメントの記述と合うように修正されました。
- 関数のout引数は、 関数の最初に初期化されるようになりました。
- 可変個引数関数でout引数の扱いを間違えていたので修正。
- テンプレートがinterfaceの宣言で展開されていたときに、 リンク時に未定義シンボルエラーが出ていたバグ修正。
- テンプレートのデフォルト引数について、 「遅延」意味解析を行うようにしました。つまり、デフォルト引数内で、 前のテンプレート引数型を使えるようになりました。
- mixinに[]で添え字を付けようとするとDMDが一般保護違反を起こすのを修正。
- std.c.time での定義と衝突していたため、 std.c.linux.linux から time_t の定義を取り除きました。
D 0.95 での変更点
Jul 6, 2004新しい/変更のあった機能
- printfの代替となる、std.stdio.writef とそれに関連した関数を追加。
- 文字列の書式化用に std.format を追加。
- std.string.format() を全機能の実現のために書き直し。
バグ修正
- Internal error: ..\ztc\cgcod.c 614 の修正。
- 静的配列のオーバーフロー検出の検知処理を修正。
- Internal error: ..\ztc\cod4.c 352 の修正。
- 識別子として使えない文字がモジュール名に含まれてしまう場合を 検出するようになりました。
- 静的メンバ関数と非静的メンバ関数は、 静的メンバ関数の中からもオーバーロードとして呼び出せるようになりました。
- デストラクタをオーバーロードしようとする間違いを検出するようになりました。
- Linux環境でのコンパイラの終了値を修正。(Sam McCall に感謝)
- 未定義のテンプレート識別子からのエラー回復が貧弱だったので修正。
- 前方参照の扱いを改善。
- ローカルの静的識別子の名前衝突の問題を修正。
D 0.94 での変更点
Jun 27, 2004バグ修正
- bit型用のTypeInfoがなかったので追加。
- 可変個引数での整数型拡張が正しくなかったのを修正。
- std.string.toStringz() の0終端化のバグを修正。
- ライブラリ内の非推奨な .size をいくつか .sizeof へ変更。
- std.stream.File.open() と std.stream.File.create() がUnicodeファイル名を扱えるように修正。(Carlos Santander Bernal に感謝)。
- std.uri.encode() の多バイト文字についてのバグを修正。
- typedefされた静的配列のコード生成のバグを修正。
- 配列初期化子が式として使用された際に生成されるエラーメッセージを 直しました。
- コンパイル時の "frame" エラーを修正。
- モジュール名をbool値として使おうとするとコンパイラが保護違反を起こしていたのを修正。
- 全引数がデフォルト値を持つ関数でコンパイラが保護違反を起こしていたのを修正。
- typedefされた型をインデクスとする連想配列のバグを修正。
- nullオブジェクトの配列でTypeInfoの衝突が起きるバグを修正。
- Internal error: ..\ztc\blockopt.c 1941 を修正
- Internal error: ..\ztc\cod1.c 2244 を修正
- Assertion failure: '0' on line 80 in file 'mtype.c' を修正。
D 0.93 での変更点
Jun 22, 2004新しい/変更のあった機能
- char.init は 0xFF、wchar.init は 0xFFFF、dchar.init は 0x0000FFFF になりました。Arcane Jillに感謝。
- 配列要素への代入演算子のオーバーロードに opIndex(index, value) を使うのは 非推奨となりました。今後は代わりに opIndexAssign(index, value) を使います。
- 複数のインデックスを取る配列演算子オーバーロードが 可能になりました。
- 可変個関数引数 のために _arguments[] と _argptr を追加。
- Typeid式 を追加。
- .typeinfo は非推奨となりました (代わりに Typeid式 を使ってください)。
- std.c.stdarg を std.stdarg で置き換え。
バグ修正
- いくつかエラーメッセージを改善しました。
- ローカルクラスの静的コンストラクタが呼ばれないバグ を修正。
- Assertion failure: 'f' on line 2695 in file 'expression.c' を修正。
- Internal error: ..\ztc\cgcs.c 353 を修正。
- モジュールを配列として使おうとすると一般保護違反になるdmdのバグを修正。
D 0.92 での変更点
Jun 7, 2004新しい/変更のあった機能
- Object.toString() と Object.print() を、 インスタンスのクラス名を表示するように変更。
- 配列の角括弧内の Expression は、 AssignExpression となりました。(つまり、 今後この位置でコンマを使うことは許されません。)
- 関数のデフォルト引数を追加。 意味論はC++と同様です。
- パッケージレベルのアクセス許可のための、package 属性を追加。
- opAdd_r, opMul_r, opAnd_r, opOr_r, と opXor_r の演算子オーバーロードを追加。
- 演算子オーバーロードの規則 の変更によって、演算子の左辺値側のクラスを変更しなくても、 右辺値側のユーザー定義型の演算子オーバーロードによって 機能追加ができるようになりました。
バグ修正
- typeof(this).func() の構文解析のバグを修正。
- インターフェイスの、ネストした多重継承のバグを修正。
- intとuintに関するtypeinfoのcompare()のバグを修正。 Stewart Gordon に感謝。
D 0.91 での変更点
May 27, 2004新しい/変更のあった機能
- void型の関数で、return文中に式を書けるようになった。
- typeof(this) と typeof(super) をサポート。
- キャスト演算子のオーバーロード機能を追加。
- typeof(this).member() は member() の非仮想呼び出しとしました。
- Mixin の修飾名が、クラスメンバに対しても動作するようにしました。
バグ修正
- std.file.listdir のWin95でのユニコード関連の問題を修正。
- インターフェイスクラスの不正な菱形継承の修正。
- std.string.capwords() は、 語頭以外の文字を小文字に変換するようになりました。
- mixin での super の問題を修正。
- assert failure mtype.c 2575 を修正。
- typedef* のエラーメッセージの整形がおかしかったのを修正。
- std.string.toString(char) を修正。
- inline関数からprivate staticにアクセスできたバグを修正。
- 文の初期化の同期処理周りでコンパイラが一般保護違反を起こすバグを修正。
D 0.90 での変更点
May 20, 2004バグ修正
- 複数回同じ関数をミックスインでオーバーライドした際の問題を修正。
- invariant やその他の特殊関数をミックスインに入れられる機能を追加。
- クラス宣言内でのデリゲートリテラルに対するエラー表示を修正。
- 整数型の定数畳み込みの際にも動作するように、 拡張比較関数を修正。
- インターフェイスへの関数のミックスインのバグを修正。
- Internal error: ..\ztc\cod1.c 1641 の修正。
- ミックスイン内の特別関数に関する名前探索の修正。
D 0.89 での変更点
May 17, 2004新しい/変更のあった機能
- 関数リテラルの void() を省略可能にしました。
- ミックスイン を追加。
- with 文が構造体のインスタンスにも使えるようになりました。
バグ修正
- Stewart Gordon による、windows.d の関数ポインタ周りの修正。
- Stewart Gordon による、std.asserterror の修正。
- Ben Hinkle による、std.stream の修正。
- テンプレート関数alias引数についてのバグを修正。
D 0.88 での変更点
May 5, 2004新しい/変更のあった機能
- std.c.stdarg を追加。(Hauke Dudenに感謝)
- C形式のキャストは非推奨となりました。(今後は、これを用いたソースをコンパイルするには -d が必要です)
- instance 形式のテンプレートのインスタンス化は非推奨となりました。 (今後は、これを用いたソースをコンパイルするには -d が必要です)
バグ修正
- テンプレートクラスとopCallの問題を修正。
- テンプレートメンバ関数と暗黙のthisの問題を修正。
- NewExp の [] の中でのプロパティの扱いを修正。
- ローカル要素をテンプレートのalias引数に渡したときに、 正しくエラー表示を出すようになりました。
- テンプレート型の宣言子に識別子がない場合のバグを修正。
- ?:演算子での定数畳み込みのバグを修正。
- J C Calvarese による std.utf.toUTF32() の修正。
- David Friedman による Linux でのモニタの修正を取り込み。
- aliasテンプレート引数のオーバーロードに関するバグ修正。
- Internal error: cg87 1235 を修正。
- クラスのデアロケータで、親クラスのデストラクタも呼ばれるようになった。
- _d_delmemory() が誤った引数を取っていたのを修正。
- auto super デストラクタの修正。
- カスタムnew演算子の、複数引数での構造体のnewを修正。
- カスタムdelete演算子の、構造体の解放処理を修正。
- オブジェクトの削除時にモニタも同時に削除されるようになった。
D 0.86 での変更点
Apr 23, 2004新しい/変更のあった機能
- テンプレートのデフォルト引数機能を追加。
- 任意のCOMでないインターフェイス型へのキャストに対応。
- Christopher E. Miller による std.socket と std.socketstream を追加。
- std.mmfile を追加。(Matthew Wilsonに感謝!)
バグ修正
- deleteへの引数がCOMインターフェイスオブジェクトのとき、 エラー報告をだすようにしました。
- Antonio Monteiro による std.date と std.zip の修正を取り込み。
- EnumBaseType が整数型でないときエラーが出るようにしました。
- 非クラスオブジェクトに対するdeleteについて修正。
D 0.82 での変更点
Mar 28, 2004バグ修正
- ある種のクラスの前方参照について、正しく扱えるようになりました。
- 不正な再帰的alias宣言が正しくエラー報告されるようになりました。
- 共用体中の無名構造体のメンバ配置のエラー修正。
- 定数配列の初期化子の問題を修正。
- 内部のバグ修正をいくつか。
- void配列のスライスが作れるようになりました。
- std.date: 夏時間制のない地域での時間計算のバグを修正。
- ネストしたdelegateリテラルに関するバグ修正。
- 基底クラスでの関数エイリアスによるオーバーロードの 継承についてのバグ修正。
- \dmd\src\dmd にファイル gnuc.h, mem.h, mem.c, port.h, enum.h, enum.c を追加。
- テンプレートの前方参照で保護違反をおこしていたバグ修正。
- Linux版の std.date.getUTCtime() を修正。
D 0.81 での変更点
Mar 7, 2004バグ修正
- クラスとモジュールが同じ名前のときの問題を修正
- 基底クラスのprotectedメンバへのアクセスの問題を修正
D 0.80 での変更点
Mar 5, 2004新しい/変更のあった機能
- 基本型を引数に取るstd.string.toStringのオーバーロードを追加
- GDMDプロジェクトとの互換性改善のためフロントエンドのソースを修正
- 浮動小数点数から整数への 暗黙の変換を禁止
バグ修正
- モジュール名とクラス名の衝突でdmdがクラッシュするバグを修正
- f(x)(y) が、fを()をオーバーロードしたクラスのインスタンスと 解釈するのではなく、 xを引数型y・返値型fの関数の宣言と解釈されていたバグを修正。 しかしまだ、f(*p)(y) に関しては問題が残っています。 解決策はおそらく、 C 方式の関数ポインタ宣言構文を廃止することでしょう。
- ネストした関数内での super の使用のバグを修正
- 非abstractクラスでの本体のない関数宣言は、 vtbl[] へ 0 を入れるのではなく、 外部のシンボルを参照するように変更
- Internal error: ../ztc/cgcod.c 1459 を修正
- テンプレートのaliasに関する問題を修正
- メンバテンプレートの意味解析の改善
- 幾つかのエラーメッセージに欠けていたファイル名/行番号表示の追加
- return文でのプロパティ構文が使えなかったバグを修正
- テンプレートの展開コンテキストの問題を修正
D 0.79 での変更点
Feb 2, 2004新しい/変更のあった機能
- foreach文にutfのデコード機能を追加。
- Christopher Millerのstd.base64を追加。
- http://www.digitalmars.com/drn-bin/wwwnews?D/21217 についてgcの修正。
バグ修正
- Win95でのstd.fileのエラーを修正(今度こそ大丈夫!)。
- 符号なしの % 10 のコード生成エラー修正。
- std.regex.testを複数回呼んだときの問題を修正。
- Internal error: ..\ztc\cgcod.c 2241 を修正。
- bit配列への代入の連鎖を修正。
- bit配列でのforeachのバグを修正。
- 再帰的templateに関するバグを大量に修正。
- ファイル 'template.c' の67行目のAssertion Failureを修正。
- short registerの最適化に関する問題を修正。
D 0.78 での変更点
Jan 7, 2004新しい/変更のあった機能
- std.string.find() と .rfind() を改良し、char[] 型文字列内の dchar 文字を検索できるようにしました。
- std.ctype の関数を、char 型の代わりに dchar 型の文字を受け取る/返すように修正しました。
- // コメントは、 改行文字ではなくファイル終端でも終えることができるようになりました。
バグ修正
- Internal error: e2ir.c 133 の修正。
- Internal error: ..\ztc\cod1.c 2240 の修正。
- Internal error: ..\ztc\cod2.c 4116 の修正。
- 不正なtemplate構文でクラッシュする問題の修正。
- std.file の関数は、Win9x系システムでは最終的に "A" 関数を使うようになりました。
- 非 0 の初期化を伴う構造体の静的配列に関する問題の修正。
- 宣言されているけれど定義されていない構造体によるクラッシュの修正。
- Win95 でのクリティカルセクションに関するバグを修正。
D 0.77 での変更点
Jan 2, 2004新しい/変更のあった機能
- ユニコードファイル名が使えるように std.file を変更。
- std.utf へ toUTF16z を追加。
- std.md5 を追加。
- 16進表記文字列では、16進文字は常に偶数個ずつ含まれなければならないようになりました。
- .alignof プロパティ追加。
- .sizeof プロパティ追加。これは .size と同じ値を持ちますが、C/C++の構造体メンバ名とかさなったりしない利点があります。
- グローバルのmain関数は main() または main(char[][] args) でなければならなくなりました。
- 定義済みaliasとして、size_t と ptrdiff_t を追加。 アドレス空間全体に渡る符号なし整数型の別名として size_t を、アドレス空間全体に渡る符号付き整数型の別名として ptrdiff_t を使います。 これにより、コードが32bitから64bitへ移植可能になります。
- .length, .size, .sizeof, .alignof の各プロパティはsize_t型の値を返すようになりました。
- Win32環境では、dmdに渡されたソースファイル名の '/' を '\' へ変換し、バックエンドが正しく動作するようにしました。
- typeof 追加。
- pragma 追加。
- 式リスト形式の case文を追加。
- switch文で使う goto default; と goto case; と goto case Expression; 式を追加。
- templateのaliasパラメタ を追加。
- 新しいtemplateのインスタンス化構文を追加。
- クラステンプレート構文を追加。
- テンプレートメンバの挿入規則を追加。
- Matthew Wilson による、再帰的なファイルシステム検索ライブラリ std.recls を追加。
バグ修正
- パーザのエラー回復処理の改善。
- bin配列のサイズの修正。
- std.intrinsic と std.math の間の名前の衝突を修正。
- std.regexp.match() のリセットの問題を修正。
- std.string.rfind() の修正。
- -inline に関する問題を幾つか修正。
D 0.76 での変更点
Nov 21, 2003新しい/変更のあった機能
- std.assert は std.asserterror へ改名されました。
- 予約語 is の追加。=== と同じ機能です。
- 演算子オーバーロード用のメソッド名を変更。
- std.process に system を追加。
- std.file への変更点:
- 幾つか関数の追加。
- std.file で byte[] 型が使われた部分を void[] に変更。
- std.file.getSize() は ulong を返すようにしました。
バグ修正
- ライブラリモジュールの名前が全て正しくなりました。
- ライブラリモジュールは全てprivate importを使うようになりました。
D 0.75 での変更点
Nov 4, 2003新しい/変更のあった機能
- 標準ライブラリパッケージの階層構造を一新しました。
- apply を opApply に変更しました。
- foreach に複数引数を渡せるように改良。
- Cのzlibライブラリへの、D用インターフェイス etc.c.zlib を追加。
- 圧縮処理モジュール std.zlib を追加。
- zip書庫処理モジュール std.zip を追加。
D 0.74 での変更点
Oct 15, 2003新しい/変更のあった機能
- 識別子にUnicode文字が使用可能になりました。
- version宣言の中に属性を含むことが可能になりました。and they'll stick. (訳者:英語の意味がわかりませんでした...(^^;)
- -offilename スイッチに任意の拡張子を渡せるようになりました。
- D.win32.registry を追加。
バグ修正
- 抽象メンバ関数の定義に関する問題を幾つか修正。
- 継承クラスの .classinfo がおかしくなる問題修正。
- Internal error: cgcod.c 1459 の修正。
- Internal error: e2ir.c 721 の修正。
- foreach が空のときの内部コンパイラエラーを修正。
- extern(Windows) 属性の関数のin/out引数のネームマングリングを修正。
- 文字列リテラルに関する ?: 演算子のバグ修正。
- &((new foo()).bar) の評価順序のバグ修正。
- delegete へ null を代入可能にしました。
- out引数へスライスを渡したときのエラーメッセージの問題を修正。
- constフィールドの初期化に関するエラーメッセージの問題を修正。
- マルチスレッド時のgcのデッドロックを解消。 (jhenzieに感謝)
D 0.73 での変更点
Sep 18, 2003新しい/変更のあった機能
- static asserts の追加。
- bswap をコンパイラの組み込み関数として追加。
- 演算子オーバーロード の対象に、 配列の添え字 [] とスライス [..]、 関数呼び出しの () を追加。
- プロパティ機能の追加。
- 関数のアドレスを取るのには、現在のような暗黙の変換ではなく、 & 演算子が必要になりました。
バグ修正
- BがAの派生であるときのB[]からA[]への暗黙の変換はサポートされなくなりました。 二つの型の間のギャップに対して型安全性を保つためです。
D 0.72 での変更点
Sep 14, 2003新しい/変更のあった機能
- BがAから派生しているとき、 B[]からA[]への暗黙の変換が可能になりました。
- 抽象クラスの関数が実体を持てるようになりました。
バグ修正
- インラインアセンブラの in と out 命令関係のバグ修正。
- printfの %.*s 書式指定のスピード改善。
- 配列の配列や構造体の配列に対する foreach の問題を修正。
- 配列の rehash に関するコンパイラのエラーを修正。
- int a = a; のような自己初期化に対し 正しくエラーを出力するようになりました。
- "string" から char[] への変換の問題を修正。これは暗黙の変換ではなく、 明確な変換であるべきです。
Linux版バグ修正
- GC中にセグメンテーション違反が起きることのあったバグ修正。
- 空の静的配列がBSSセグメントに置かれるようになりました。
- uintからrealへの変換が正しく動作するようになりました。
D 0.71 での変更点
Sep 3, 2003新しい/変更のあった機能
- foreach文を追加。
バグ修正
- ネストした関数に関するバグ修正。
- Linux版の file.write() と file.append() のバグ修正。
- Linux版の /etc/dmd.conf の処理のバグ修正。
D 0.70 での変更点
Aug 24, 2003新しい/変更のあった機能
- object.d へ wprintf() を追加。
- alias を拡張し、 別スコープで多重定義された関数にも対応しました。
バグ修正
- UTF-8ファイルの先頭BOMマークを正しく処理できていなかった問題を修正。
- 2つのコンパイラでの一般保護違反問題を修正。
- インターフェイスへのダウンキャストの問題を修正。
- Linux版でDFLAGS内に%@P%を書いたときseg faultする件を修正。
- Linux版で-Lスイッチが動作していなかった問題を修正。
D 0.69 での変更点
Aug 11, 2003新しい/変更のあった機能
- UTF-32文字用の、予約語 dchar を追加。
- ' ' を、文字列リテラルではなく文字リテラルに変更。
- WYSIWYG文字列は、r"string" になります。'string' ではなく。
- `string` (バッククォート) もWYSIWYG文字列です。
- x"0a AA BF" 形式の16進文字列表記の導入。
- 1文字の文字列リテラルから文字型への暗黙の変換を 廃止。
- UTF-8, UTF-16, UTF-32 の文字列リテラル間は暗黙に変換されます。
- コマンドスイッチ -o を廃止し、 替わって -od, -of, -op を導入。混乱を減らし柔軟性を高めるためです。
- bit の alias として bool を追加。
- 整数や浮動小数点数リテラル中に、整形用の _ を含めることが可能になりました。
バグ修正
- bit型の変数を関数の out,inout パラメタとして使用可能になりました。
- パッケージ名をmangling後の名前に含めるようになりました。
- manglingされた名前は、あいまいさのない復元が可能になりました。
- 8Byteの構造体を関数から返す際の問題修正。
- typedefされた連想配列に関するバグ修正。
- typedefされた返値に関するバグ修正。
- 'typedef struct' からのエラー回復に関する修正。
- Linuxでの例外処理に関する問題の修正。
- Linux版で 0b... 数値リテラルが動作するようになりました。
D 0.68 での変更点
Jul 8, 2003- クラスや基本型のTypeInfoを追加しました。
- 非ゼロ初期化される型の配列をnewするコードが動くようになりました。
- bitの配列をnewするコードが動くようになりました。
- structをnewするコードが動くようになりました。
- typedefされた連想配列の添字に関するバグの修正。
- void でない戻り値を持つ関数の最後まで実行パスが到達してしまったとき、 仮にコンパイル時エラーが起きていなくても実行時例外を投げるようになりました。
- ネストした関数での予約語inoutのパースに失敗するバグ修正。
- cgcs 350 エラー を修正。
- constオブジェクトへの代入が発生しうる箇所で起きるエラーの修正。
- 存在しない構造体メンバを初期化リストに書いたときクラッシュする問題を修正。
- constオブジェクトに初期化子が存在しないときにクラッシュする問題を修正。
- cgobj 3115 エラー を修正。
- voidへのスライシングが起きた時正しくエラーを発するようになりました。
D 0.67 での変更点
Jun 17, 2003- バグ修正を幾つか。
D 0.66 での変更点
Jun 8, 2003- uri モジュールの追加。
- utf モジュールの追加。
- ?:演算子に対して定数畳み込みの最適化を行うようになりました。
- ゼロ初期化された構造体を使うだけならば、 構造体を定義したモジュールへのリンクは不要になりました。
- privete import をサポート。
- 複数のモジュール間で共通のクラス名があっても衝突しないようになりました。 このためクラス名のmangling方法を変更したので、 古いライブラリは再コンパイルが必要です。
- 次のような形のtemplateで:
template foo(T:T[])
foo(int[]) の時 T を正しく int と判断するようになりました。(int[]ではなく)
D 0.65 での変更点
May 13, 2003linux 版
- 間違ったセクション名のバグをもう一つ修正。
D 0.64 での変更点
May 12, 2003linux 版
- このバージョンから、dmd.conf は /etc/dmd.conf としてインストールする必要があります。
- phobos.a は libphobos.a と改名され、 /usr/lib ディレクトリにおかれるようになりました。
- dmd はリンク処理を自動的に行うようになりました。
- 間違ったセクション名を出力するバグがどうにか修正されました。
D 0.63 での変更点
May 10, 2003- Linux版をパッケージに追加。 Burton Radons と Pat Nelson に感謝します。
D 0.61 での変更点
Mar 30, 2003- Burton Radons の stream.d への修正を取り込み。
- 文字列の連結や文字列によるswitchのパフォーマンスを改善。
- Phobos ライブラリはこのバージョンから、最適化ビルドされています。
- 報告のあった様々なバグを修正。
D 0.59 での変更点
Mar 6, 2003- ネストした関数に関するバグの修正。
- gnucでコンパイルが通るようにソースを再構成。
D 0.58 での変更点
Mar 3, 2003- 関数の共変戻り値型 の導入。
- ネスト関数, templateの引数推論, アクセス制御, 定数畳み込み etc... に関するバグ修正。
D 0.57 での変更点
Feb 25, 2003- 予約語 function と新しい 関数ポインタ 構文をdelegateと類似の形で導入。
- 関数リテラル 導入。
- 関数のネスト 導入。
- クロージャ 導入。
- 関数の中での struct/class の定義についてのバグ修正。
D 0.56 での変更点
Feb 20, 2003- template typedef と配列に関する二つのバグを修正。
D 0.55 での変更点
Feb 17, 2003- math.d へ幾つか新しく数学関数を追加。
- new式の挙動を、
新しい配列宣言の順序にあうように変更:
char[][] foo; foo = new char[][45]; // 新しい, 45個の文字列を確保する正しい方法 //foo = new char[45][]; // 古い, 今や間違いとなった方法
- エラーからの回復に関するバグを修正
- モジュール名は、モジュールの中身スコープに置かれるようになりました。 (以前は、モジュール内からは単純にアクセス不能でした。)
D 0.54 での変更点
Feb 14, 2003- template instance の構文解析の問題を修正。
- 新しい型 cfloat, cdouble, ifloat, idouble の導入。
- 新しい定数型 ifloat, idouble の導入。
- extended を real に改名。
- imaginary を ireal に改名。
- complex を creal に改名。
- 識別子より左にある配列の宣言の順序を逆転しました。
後置の配列宣言構文の場合は元と同じままです。
(Cと同等)
int[3][4] a; // a は 4要素の "3要素のint配列" の配列 int b[4][3]; // b は 4要素の "3要素のint配列" の配列
D 0.53 での変更点
Feb 8, 2003- 明示的なメモリ割り当て/解放 機能の導入。
D 0.52 での変更点
Feb 5, 2003- with構文への引数として、テンプレートのインスタンスを書けるようになりました。
- インラインアセンブラで、FCOMI/FCOMIP/FUCOMI/FUCOMIP に対して Intelのドキュメントにある ST,ST(i) 形の命令も受け付けるようになりました。
- 細かいバグの修正いろいろ。
D 0.51 での変更点
Jan 27, 2003- テンプレートの(型パラメータだけでなく)値パラメータに対応。
- テンプレート周りのバグを幾つか修正。
- #line pragma の導入。
- 様々なUTF形式のテキストをソースとして扱えるようになりました。
D 0.50 での変更点
Nov 20, 2002- bit型への変換は、明示的なキャストを必要とすることにしました。 (cast(bit)i) という変換は (i?true:false) として実行されます。
- ライブラリ関数 string.toString() の追加。
- テンプレート周りのバグを色々修正。
- 整数型の暗黙の変換規則を変更しました:
値が変化する可能性がある場合は暗黙の変換は許可されません。
例えば:
byte b = 0x10; // ok ubyte c = 0x100; // error byte d = 0x80; // error ubyte e = 0x80; // ok
D 0.49 での変更点
Nov 18, 2002- sc.ini へ LINKCMD を追加。どのリンカを使うか指定できます。
- 複数個の -I スイッチを使えるようになりました。 パスは前から順に検索されます。
- regexpの、空の代入に関するバグを修正。
- "reference to this before super()" エラーを取り除きました。
- 浮動小数の % と %= 演算は、 ライブラリ関数ではなくコード生成時に直接出力されるようになりました。
- GCStats のリンクの問題を修正。
- その他細々としたバグを沢山修正。
D 0.48 での変更点
Oct 25, 2002- phobos ライブラリへ conv を追加。
- 人々を悩ませていた幾つかのバグを修正。
D 0.47 での変更点
Oct 22, 2002バグ修正
- Burton の報告した小さな構造体の配列に関するバグと、 stream.d の単体テスト失敗を修正
D 0.46 での変更点
Oct 22, 2002- autoクラスのコンストラクタに関する問題の修正。
- -O付きでコンパイルした際の不変条件の呼び出しの問題を修正。
- makefileを簡単にするために、lib.exe のコマンドラインの構文を改めました。
- 文字列リテラルは複数行にわたることが可能になりました。
- アクセス違反などの Windows 例外の処理に関するバグを修正。
- Windows GUI アプリの生成への対応を改善。
- コード生成のバグを幾つか修正。
D 0.45 での変更点
Oct 8, 2002D 0.44 での変更点
Oct 1, 2002- Joe Battelle の提案で、interface の意味論を明確にして、それに関する問題点を修正。
D 0.43 での変更点
Sep 28, 2002- 新しい構文 VolatileStatement の導入。
- 新しい記憶クラス auto と autoクラスの導入。RAIIを実現できます。 詳しくは ここ と ここ を。
What's New for D 0.42
Sep 12, 2002新しい/変更のあった機能
- alias 宣言の実装
What's New for D 0.41
Sep 9, 2002新しい/変更のあった機能
- 新しい配列リサイズアルゴリズムの実装
What's New for D 0.40
Sep 8, 2002新しい/変更のあった機能
- テンプレートの実装
What's New for D 0.39
Aug 28, 2002新しい/変更のあった機能
- ちょっとしたバグを修正
What's New for D 0.38
Aug 21, 2002新しい/変更のあった機能
- 演算子オーバーロードの対応を一新
What's New for D 0.37
Aug 18, 2002新しい/変更のあった機能
- www.digitalmars.com/d/operatoroverloading.html 全ての演算子に対応しているわけではありませんが、とりあえず
What's New for D 0.36
Aug 15, 2002バグ修正
- いろいろとバグフィックス
What's New for D 0.35
Jun 3, 2002新しい/変更のあった機能
- sc.ini ファイル対応
What's New for D 0.34
May 31, 2002新しい/変更のあった機能
- public/protected/private が動作するようになりました
バグ修正
- いくつかバグフィックス
What's New for D 0.32
May 17, 2002新しい/変更のあった機能
- -inlineスイッチをつけると関数をインライン化するようにしました
- DMDがリンクまで行うようになりました。SCは不要です
バグ修正
- ビット配列と配列全般に関する幾つかのバグフィックス
What's New for D 0.30
Apr 27, 2002バグ修正
- 報告されたバグをいくつかfix
What's New for D 0.29
Apr 23, 2002新しい/変更のあった機能
- フロントエンドとコンパイラのソースを公開
What's New for D 0.28
Apr 21, 2002新しい/変更のあった機能
- ==, != による比較と ===, !== のsemanticsを実装
What's New for D 0.27
Apr 16, 2002新しい/変更のあった機能
- スレッドライブラリを追加し、GCをスレッド対応にしました。 www.digitalmars.com/d/phobos.html#thread
What's New for D 0.26
Apr 10, 2002新しい/変更のあった機能
- delegateを実装: www.digitalmars.com/d/type.html
- Win98 で動作するようになりました
What's New for D 0.25
Apr 7, 2002新しい/変更のあった機能
- コンパイラの一貫性を改善するためにコンパイラの内部の大幅なリファクタリング
- エラーメッセージ改善
- .init プロパティを実装
- time, date 関数を追加
- Pavel の math2 パッケージを追加
- フロントエンドのコードの一部を \dmd\src\dmd\ に追加
What's New for D 0.24
Mar 29, 2002新しい/変更のあった機能
- lexerとparserのソースを公開
- 配列の .reverse, .sort 等を公開
バグ修正
- 配列処理のバグを大量に修正
What's New for D 0.23
Mar 26, 2002新しい/変更のあった機能
- 連想配列の内部実装の書き直し
バグ修正
- Pavelの発見したバグを幾つか修正
What's New for D 0.22
Mar 14, 2002新しい/変更のあった機能
- Dで実装し直したGCが入っています
- Phobos内のC++のコードをDのコードで置き換えました。 このGCは、現状ではDに関数のインライン化が実装されていないためやや低速です。 インライン化によって C と D のパフォーマンスの差は限りなく埋まりますし、 Dにはさらなる最適化の余地が残っています。
- I/O ポート呼び出し等の組み込み関数を実装: www.digitalmars.com/d/phobos.html#intrinsic
What's New for D 0.20
Feb 26, 2002新しい/変更のあった機能
- インラインアセンブラを実装
What's New for D 0.19
Feb 8, 2002バグ修正
- win98 クラッシュ
- /+ +/ コメント
- 関数ポインタ型
- etc
What's New for D 0.16
Jan 20, 2002新しい/変更のあった機能
- 配列の境界検査
What's New for D 0.15
Jan 15, 2002新しい/変更のあった機能
- パッケージがついに実装完了しました www.digitalmars.com/d/module.html
- stdio を c.stdio に、stdlib を c.stdlib に変更しました
What's New for D 0.11
Jan 4, 2002バグ修正
- No changelog
What's New for D 0.10
Jan 2, 2002バグ修正
- No changelog
What's New for D 0.07
Dec 28, 2001バグ修正
- No changelog
What's New for D 0.04
Dec 23, 2001バグ修正
- 報告いただいたバグを大量に修正
What's New for D 0.03
Dec 19, 2001バグ修正
- 配列と文字列関係のバグを大量に修正。 strings.d (D ランタイムライブラリの文字列処理関係のソース) が参考になると思います。 配列スライスや単体テストを多用しています。
What's New for D 0.02
Dec 16, 2001バグ修正
- インターフェイス経由の呼び出し、キャスト、暗黙変換、vtbl[] を実装
- import object は暗黙にされるようになりました
- Object がデフォルトの基底クラスとなりました
- モジュールレベルでのオーバーロード
What's New for D 0.01
Dec 9, 2001バグ修正
- レポートされたバグを修正
What's New for D 0.00
Dec 8, 2001新しい/変更のあった機能
- 最初のリリース