digitalmars.D.bugs - [Issue 13719] New: std.datetime no longer compiles when trivial
- via Digitalmars-d-bugs (60/60) Nov 12 2014 https://issues.dlang.org/show_bug.cgi?id=13719
https://issues.dlang.org/show_bug.cgi?id=13719 Issue ID: 13719 Summary: std.datetime no longer compiles when trivial destructor is added Product: D Version: D2 Hardware: All OS: Windows Status: NEW Severity: blocker Priority: P1 Component: Phobos Assignee: nobody puremagic.com Reporter: bugzilla digitalmars.com Adding the line: public pure nothrow safe nogc ~this() { } as a member to struct Date, and compiling with -unittest produces the errors: std\datetime.d(19806): Error: template std.datetime.Interval!(Date).Interval.shift cannot deduce function from argument types !()(int, int), candidates are: std\datetime.d(18203): std.datetime.Interval!(Date).Interval.shift(D)(D duration) if (__traits(compiles, begin + duration)) std\datetime.d(19813): Error: template std.datetime.Interval!(Date).Interval.shift cannot deduce function from argument types !()(int, int, AllowDayOverflow), candidates are: std\datetime.d(18203): std.datetime.Interval!(Date).Interval.shift(D)(D duration) if (__traits(compiles, begin + duration)) std\datetime.d(19817): Error: template instance std.datetime.__unittestL19799_294.testInterval!(Interval!(Date)) error instantiating std\datetime.d(19842): Error: template std.datetime.Interval!(Date).Interval.shift cannot deduce function from argument types !()(int), candidates are: std\datetime.d(18203): std.datetime.Interval!(Date).Interval.shift(D)(D duration) if (__traits(compiles, begin + duration)) std\datetime.d(19845): Error: template std.datetime.Interval!(Date).Interval.shift cannot deduce function from argument types !()(int), candidates are: std\datetime.d(18203): std.datetime.Interval!(Date).Interval.shift(D)(D duration) if (__traits(compiles, begin + duration)) std\datetime.d(19895): Error: template std.datetime.Interval!(Date).Interval.expand cannot deduce function from argument types !()(int, int), candidates are: std\datetime.d(18300): std.datetime.Interval!(Date).Interval.expand(D)(D duration, Direction dir = Direction.both) if (__traits(compiles, begin + duration)) std\datetime.d(19903): Error: template std.datetime.Interval!(Date).Interval.expand cannot deduce function from argument types !()(int, int, AllowDayOverflow, Direction), candidates are: std\datetime.d(18300): std.datetime.Interval!(Date).Interval.expand(D)(D duration, Direction dir = Direction.both) if (__traits(compiles, begin + duration)) std\datetime.d(19907): Error: template instance std.datetime.__unittestL19888_296.testInterval!(Interval!(Date)) error instantiating std\datetime.d(19958): Error: template std.datetime.Interval!(Date).Interval.expand cannot deduce function from argument types !()(int), candidates are: This is a blocker for https://github.com/D-Programming-Language/dmd/pull/4136 --
Nov 12 2014