test case: -------- shared(inout U)[n] id(U, size_t n)( shared(inout U)[n] ); void main() { static assert(is(typeof( id((shared(int)[3]).init)) == shared(int)[3])); } output: -------- test.d(4): Error: static assert (is(shared(inout(int)[3u]) == shared(int[3u]))) is false
https://github.com/D-Programming-Language/dmd/pull/800