DMD1.005 发布.

ideage 2007-02-06
修改了很多BUG,添加了混入新特性.

What's New for D 1.005
Feb 5, 2007
New/Changed Features
-v now emits pragma library statements and imported file names
deprecated === and !== tokens no longer recognized
length can no longer shadow other length declarations
Added MixinStatements, MixinExpressions, and MixinDeclarations.
Added ImportExpressions.
Added std.metastrings
Bugs Fixed
Bugzilla 761: std.format.doFormat fails for items of a char[][] containing %s
Bugzilla 784: regression: [Issue 402] compiler crash with mixin and forward reference
Bugzilla 787: incorrect documentation of std.ctype.isprint
Bugzilla 788: Compiler rejects hex floats in the format: HexPrefix HexDigits . HexDigits(opt) with binary-exponent-part required
Bugzilla 789: const initialization in forwarding constructors doesn't work
Bugzilla 791: dhry.d example doesn't compile in 1.0 without trivial change
Bugzilla 794: std.math.exp2(0) equals 0 instead of 1
Bugzilla 800: writefln() on an associative array fails hard
Bugzilla 821: segfault with char array copy; mistaken samples in doc
Bugzilla 831: Warning!! String literals are read-only one some platforms.
Bugzilla 832: NRVO: return inside foreach results in junk
Bugzilla 835: RegExp.test wrongly matches strings on case insensitive attribute
Bugzilla 846: Error 42: Symbol Undefined _D1a7__arrayZ
Bugzilla 848: typo in C sorting example
Bugzilla 862: Selectively importing a nonexistent identifier results in spurious and incorrect error message
Bugzilla 872: Assertion in expression.c caused by taking typeof of "this.outer" in nested classes.
Bugzilla 875: crash in glue.c line 700
Bugzilla 886: std.zlib uncompression routines do not mark result as containing no pointers
Bugzilla 887: TypeInfo does not correctly override opCmp, toHash
Bugzilla 888: -cov and _ModuleInfo linking bugs
Bugzilla 890: Returning char[4] and assigning to char[] produces unexpected results.
Bugzilla 891: Crash when compiling the following code (tested with 1.0, 1.001 and 1.002)
Bugzilla 893: The profile flag no longer seems to work on Linux x86 64
Bugzilla 894: base class with implemented abstract method problem
Bugzilla 897: fix default dmd.conf file
Bugzilla 898: std.conv.toInt doesn't raise ConvOverflowError
Bugzilla 901: Comparison of array literals fails
Bugzilla 903: Example with printf and string literals crashes
Bugzilla 908: compiler dies trying to inline static method call to nonstatic method in template code.
Bugzilla 910: Error in description of "this" and "super" keywords
Bugzilla 913: deprecated tokens still listed
Bugzilla 915: dmd generate bad form return(retn 4) for invariant func
Bugzilla 916: regression: Internal error: ../ztc/gloop.c 1305
Bugzilla 917: regression: circular typedefs cause segfaults
Bugzilla 924: GC collects valid objects
D.announce/6983
qiezi 2007-02-07
import表达式感觉没什么用,mixin还是不错的,只要能在编译期生成字符串就行,看样子是可以使用字符串来生成方法了,有空看看。

新的GC不知道改进得怎么样。

最近没法上网,休息一阵子,明年再说。。
icefire 2007-02-08
好像上了1.0以后,更新比较多嘛!
qiezi 2007-02-10
import表达式只是为了静态引入一个外部文件,有几个用途:

1、把大段的文本放在外部文件中,保持源代码干净。
2、和mixin配合起来使用,强大的DSL。。。
qiezi 2007-02-10
使用这些新功能,BCS作了个Parser的示范:
http://www.dsource.org/projects/scrapple/browser/trunk/dparser/dparse.d
ideage 2007-02-11
强大的DSL。。。!!!

这个伟大的功能我也发现了.
太强大了.
这样,D差不多变成了脚本语言,并且可以动态执行了!
Global site tag (gtag.js) - Google Analytics