[Issue 13719] New: std.datetime no longer compiles when trivial destructor is added
via Digitalmars-d-bugs
digitalmars-d-bugs at puremagic.com
Wed Nov 12 12:23:34 PST 2014
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 at puremagic.com
Reporter: bugzilla at 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
--
More information about the Digitalmars-d-bugs
mailing list