On 08/21/2010 12:37 PM, Eduardo Cavazos wrote:
Hello,

The 'map' from std.algorithm doesn't seem to work with fixed-size arrays:

----------------------------------------------------------------------
import std.stdio ;
import std.math ;
import std.algorithm ;

T sq ( T ) ( T x ) { return x*x ; }

void main ()
{
double [2] a = [ 1.0 , 2.0 ] ;

writeln ( map ! ( sq ) ( a ) ) ;
}
----------------------------------------------------------------------

$ rdmd test_map_sq_fixed_size_b.d
/usr/include/d/dmd/phobos/std/algorithm.d(108): Error: template instance
Map!(sq,double[2u]) does not match template declaration Map(alias
fun,Range) if (isInputRange!(Range))

Is this an intended limitation?

Ed

IIRC, it's intended. Use a[] to get a dynamic array from a.

Reply via email to