import std.stdio;
void main() { int a[][] = [[1,2,3]]; foreach(x; a) { x[0] = 0; x ~= 4; } writeln(a); }I understand why thw program could output [1,2,3] (like in C++ without &) or [0,2,3,4] (python, C++ ref). But [0,2,3]? It was unpleasant surprise.