bool fun(S)(ref S[3] a) { assert(a == [42, 84, 169]); return true; } | |
bool fun2(S)(ref S a) { return true; } | |
void main() | |
{ | |
static const int[3] sa = [42, 84, 169]; | |
static const double sa2 = 42.42; | |
static assert(fun(sa)); | |
static assert(fun2(sa2)); | |
} | |
int f1(ref const int p) { return p; } | |
int f2(ref const int[2] p) { return p[0] + p[1]; } | |
void test2() | |
{ | |
static immutable int[2] P = [ 0, 1 ]; | |
static assert(f2(P) == 1); | |
} |