November 12, 2014 [Issue 13719] New: std.datetime no longer compiles when trivial destructor is added | ||||
---|---|---|---|---|
| ||||
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 -- |
Copyright © 1999-2021 by the D Language Foundation