Thread overview
[D-runtime] Odd time.di error in 2.055
Oct 16, 2011
Alex
Oct 16, 2011
Jonathan M Davis
Oct 16, 2011
Don Clugston
October 16, 2011
Hey folks,

Has anyone seen this before?

/usr/local/include/d2/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
/usr/local/include/d2/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)()

This seems to happen in 2.055 but didn't in previous versions. I'm not explicitly using core.time anywhere in my code, so I'm having a lot of trouble trying to make an isolated test case. :(

Does anyone have a clue what might be going awry here?

Thanks in advance!

Regards,
Alex
October 16, 2011
On Sunday, October 16, 2011 15:10:20 Alex wrote:
> Hey folks,
> 
> Has anyone seen this before?
> 
> /usr/local/include/d2/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
> /usr/local/include/d2/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)()
> 
> This seems to happen in 2.055 but didn't in previous versions. I'm not explicitly using core.time anywhere in my code, so I'm having a lot of trouble trying to make an isolated test case. :(
> 
> Does anyone have a clue what might be going awry here?
> 
> Thanks in advance!

Well, it's kind of hard to figure it out without code which runs into the problem. Are you using std.datetime anywhere?

- Jonathan M Davis
October 16, 2011
On 16 October 2011 22:35, Jonathan M Davis <jmdavisProg at gmx.com> wrote:
> On Sunday, October 16, 2011 15:10:20 Alex wrote:
>> Hey folks,
>>
>> Has anyone seen this before?

Bug 6502.

>> /usr/local/include/d2/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
>> /usr/local/include/d2/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)()
>>
>> This seems to happen in 2.055 but didn't in previous versions. I'm not explicitly using core.time anywhere in my code, so I'm having a lot of trouble trying to make an isolated test case. :(
>>
>> Does anyone have a clue what might be going awry here?