Sample code ======================== class foo{} void main(){ alias shared foo bar; // results in error //alias shared(foo) bar; // works shared(foo) x = new bar(); } ======================== Result with dmd 2.037 (Bug report lists dmd 2.036 since 2.037 was not an option at the time) $ dmd test.d test.d(4): Error: cannot implicitly convert expression (new foo) of type test.foo to shared(foo)
http://www.dsource.org/projects/dmd/changeset/307
Fixed dmd 2.038