編程語言 D 2.068.1 發布

jopen 9年前發布 | 5K 次閱讀 D語言

D語言(Dlang)是由Digital Mars公司開發的編程語言,起因是為了改進C++。它與C二進制兼容(不完全),可編譯為本地碼,有GC也可手動管理內存,語法上借鑒多種語言,模板則 在C++的基礎上做了相當大的擴充。D 語言既有 C 語言的強大威力,又有 Python 和 Ruby 的開發效率。它是一種集垃圾回收、手工內存操作、契約式設計、高級模板技術、內嵌匯編、內置單元測試、Mixin 風格多繼承、類 Java 包管理機制、內置同步機制、內建基本運行時信息的系統級編程語言。

D語言是一種通用的系統和應用編程語言。它是比 C++ 更高級的語言,同時還保持了生成高效代碼以及直接訪問操作系統API和硬件的能力。D 很適合于編寫從中等規模到那些由團隊合作完成、數百萬行代碼規模的各種程序。D 易于學習,為編程者提供了很多便利,并且適用各種野心勃勃的編譯器優化技術。

D 不是腳本語言,也不是一種解釋型語言。它不需要虛擬機、宗教、或者高于一切的哲學。它是給實際的編程者使用的實際的語言,它幫助編程者快速、可靠的完成易于維護、易于理解的代碼。

D 是數十年來實現多種語言編譯器的經驗的積累,是用那些語言構造大型工程的嘗試的積累。D 從那些語言(主要是 C++ )那里獲得了靈感,并使用經驗和現實世界中的實用性來馴服它。

編程語言 D 2.068.1 發布,此版本添加了 configure coverage, profile 和 profile=gc reports 功能函數

其他 bug 修復和改進:

DMD Compiler regressions

  1. Bugzilla 14431: [REG 2.067.0] huge slowdown of compilation speed

    </li>

  2. Bugzilla 14621: [REG2.066] ICE: Assertion failure: 'global.gaggedErrors || global.errors' on line 752 in file 'statement.c'

    </li>

  3. Bugzilla 14781: [REG2.067] impure delegate to pure function context should be able to modify context

    </li>

  4. Bugzilla 14901: [reg 2.067/2.068] template static shared this() run multiple times with separate compilation

    </li>

  5. Bugzilla 14911: Compiler found indexing in code "new MyStruct[2].ptr"

    </li>

  6. Bugzilla 14923: [REG2.067] ICE: Assertion failed: (tret->ty != Tvoid), function semantic3, file func.c, line 1736.

    </li>

  7. Bugzilla 14926: Programs compiled using dmd 2.068 are generating dummy profilegc.log files

    </li>

  8. Bugzilla 14929: [REG2.067] ICE: Assertion failure: 'ez->exp && ez->exp->op == TOKconstruct' on line 302 in file 'escape.c'

    </li>

  9. Bugzilla 14944: [REG2.064] cannot initialize static array by static this()

    </li>

  10. Bugzilla 14948: [Reg 2.068.0] AA key requirement was broken w/o notice and w/ horrible error message

    </li>

  11. Bugzilla 14962: [REG2.068] compiler inference of attributes for nested map seems broken

    </li>

  12. Bugzilla 14973: [REG2.068] compiler inference of contexts for nested map seems broken

    </li>

  13. Bugzilla 14985: [REG2.068.1-b1] Link failure for const TypeInfo of speculative instantiated struct

    </li>

  14. Bugzilla 14986: [REG2.068.1-b2] Assertion failed: (id->dyncast() == DYNCAST_DSYMBOL)

    </li>

  15. Bugzilla 15002: [REG2.064] ICE with invalid static variable initializer while CTFE

    </li>

  16. Bugzilla 15017: [REG2.068.1-b2] assigning a Variant to be value in a hashmap

    </li> </ol>

    DMD Compiler bugs

    1. Bugzilla 14624: The array operator overloading fallback is not correct

      </li>

    2. Bugzilla 14625: opIndex() doesn't work on foreach container iteration

      </li>

    3. Bugzilla 14696: destructor for temporary called before statement is complete with conditional operator

      </li>

    4. Bugzilla 14708: destructor for temporary not called during stack unwinding

      </li>

    5. Bugzilla 14889: ICE: Assertion `o->dyncast() == DYNCAST_DSYMBOL' failed.

      </li>

    6. Bugzilla 14900: 2.068.0 change log example does not compile

      </li> </ol>

      DMD Compiler enhancements

      1. Bugzilla 13889: mscoff32 libs not available

        </li>

      2. Bugzilla 14951: Win64: Invalid C++ mangling for __gshared pointer variables

        </li> </ol>

        Phobos regressions

        1. Bugzilla 14904: [REG2.067.0] bad error message in reduce: 'Incompatible function/seed/element'

          </li>

        2. Bugzilla 14920: [REG2.067.0] SList.insertAfter on uninitialized list triggers assertion in _first

          </li>

        3. Bugzilla 14980: [REG2.068] getAddressInfo(null) broken

          </li> </ol>

          Installer bugs

          1. Bugzilla 14897: shared linux libraries from zip package don't work

            </li> </ol>

            更多內容請看發行說明

            來自:http://www.oschina.net/news/65954/d-2-068-1

             本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
             轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
             本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!