This is a bit of a weird one. In DMD 2.055 the following code: import core.time; void main() {} Gives the compile error: > dmd test.d -release -inline -noboundscheck /Library/Compilers/dmd2/osx/bin/../../src/druntime/import/core/time.di(253): Error: template core.time.TickDuration.to(string units,T) if ((units == "seconds" || units == "msecs" || units == "usecs" || units == "hnsecs" || units == "nsecs") && (__traits(isIntegral,T) && T.sizeof >= 4)) does not match any function template declaration /Library/Compilers/dmd2/osx/bin/../../src/druntime/import/core/time.di(253): Error: template core.time.TickDuration.to(string units,T) if ((units == "seconds" || units == "msecs" || units == "usecs" || units == "hnsecs" || units == "nsecs") && (__traits(isIntegral,T) && T.sizeof >= 4)) cannot deduce template function from argument types !("seconds",long)() It *only* happens with those three flags. Remove any one and the code compiles fine. This didn't happen in DMD 2.053 (haven't tried 2.054)
Looks like http://d.puremagic.com/issues/show_bug.cgi?id=6502 ?
(In reply to comment #1) > Looks like http://d.puremagic.com/issues/show_bug.cgi?id=6502 ? Yes, it looks like you're right. I'll close this one. *** This issue has been marked as a duplicate of issue 6502 ***