void formattedRead(int* val) { *val = 1; } void test() { int n; formattedRead(&n); assert(n == 1); // fails! } static assert({ test(); return true; }());
Similar code. void formattedRead(string* val) { *val = "1"; } void test() { string val; formattedRead(&val); assert(val == "1"); } static assert({ test(); return true; }());
https://github.com/D-Programming-Language/dmd/commit/beef649d9b19ce21e75f3d496af0a67844698c41 https://github.com/D-Programming-Language/dmd/commit/469b82d4ced0f6c7efc79f3f9953da83f2f87e63