I think this is a bug, but I can't be sure. [time.d] import std.stdio, std.date; void main() { d_time now = UTCtoLocalTime(getUTCtime()); writefln("%s", toTimeString(now)); } dmd -run time.d 10:54:42 GMT+0100 time /t 09:55 I am in London so at GMT, but it's summer so we're at +0100 currently (aka BST). It seems std.date adds an extra hour? Regan