If I change formattedRead's input signature to:
uint formattedRead(R, Char, S...)(ref R r, const(Char)[] fmt, ref S args)
and adjusted code accordingly.
It seems to work fine.
see implementation here:
(just run unittests: rdmd --main -unittest dtools/all.d)
why is std.format. formattedRead taking by pointer instead ?
could we change that (with proper deprecation), or add that function?