blob: fe47c838dd9cb4862107c27667babb08a52e879c [file] [log] [blame]
/*
TEST_OUTPUT:
---
fail_compilation/diag13884.d(14): Error: functions cannot return a tuple
fail_compilation/diag13884.d(21): instantiated from here: `MapResult!((t) => t.tupleof, Foo[])`
fail_compilation/diag13884.d(14): instantiated from here: `map!(Foo[])`
---
*/
struct Foo { int x; }
void main()
{
[Foo(1)].map!(t => t.tupleof);
}
template map(fun...)
{
auto map(Range)(Range r)
{
return MapResult!(fun, Range)(r);
}
}
struct MapResult(alias fun, R)
{
R _input;
@property auto ref front()
{
return fun(_input[0]);
}
}