DMD 1.031 and 2.015 templates

Bill Baxter dnewsgroup at billbaxter.com
Wed Jun 18 03:25:28 PDT 2008


Lars Ivar Igesund wrote:
> Walter Bright wrote:
> 
>> Some new stuff to make writing templates easier.
>>
>> http://www.digitalmars.com/d/1.0/changelog.html
>> http://ftp.digitalmars.com/dmd.1.030.zip
> 
> (Wrong zip link ^)
> 
> Something broke, probably due to the fix in 617 and/or 1383:
> 
> Given
> 
> T[] layout(T) (T[] output, T[][] layout ...)
> 
> the following code
> 
> T[] format(T) (T[] output, Time t) {
> 
> T[] convert (T[] tmp, long i)
> {
>     return Integer.formatter!(T) (tmp, i, 'u', 0, 8);
> }
> 
> return layout (output, "%0, %1 %2 %3 %4:%5:%6 GMT", 
>                             Days[date.dow],
>                             convert (tmp[0..2], date.day),
>                             Months[date.month-1],
>                             convert (tmp[2..6], date.year),
>                             convert (tmp[6..8], time.hours),
>                             convert (tmp[8..10], time.minutes),
>                             convert (tmp[10..12], time.seconds)
>                            );
> }
> 
> results in
> 
> :template layout(T) does not match any template declaration
> :template layout(T) cannot deduce template function from argument types
> (wchar[],char[25u],wchar[],wchar[],wchar[],wchar[],wchar[],wchar[],wchar[])
> 
> I tested adding w at the end of the literal, something that resulted in the
> following message instead.
> 
> :template layout(T) cannot deduce template function from argument types
> (char[],wchar[25u],char[],char[],char[],char[],char[],char[],char[])
> 
> In effect, the above makes this release unusable.
> 

Wow.  If so, that makes the third unusable release of D1 in a row.  Ouch.

--bb


More information about the Digitalmars-d-announce mailing list