https://issues.dlang.org/show_bug.cgi?id=17318 --- Comment #3 from hsteoh at quickfur.ath.cx --- P.S. On my computer, the value of z changes after the call to dg(), which is wrong because z is a local variable in smoke() that the delegate should not be able to access. --