xxxxxxxxxx
struct M {
int i;
S*[100] s;
}
struct S {
M* mp;
bool x;
}
S* add(A...)(ref A a) {
__gshared s = S(a);
alias m = a[0];
m.s[m.i++] = &s;
return &s;
}
void main(){
__gshared M m = M(0);
__gshared S s = S(&m, false);
m.s[m.i++] = &s;
auto p = add(&m, true); // variable _param_0 cannot be read at compile time
}