Dmitry Olshansky: > then every array is implicitly castable to tail immutable. > int[] array = [1, 2]; > > foreach (ref immutable(int) x; array) { > ... > func(arr); // arr is mutable, thus func can change x > // so x can be at most const > } I understand, thank you :-) Bye, bearophile