16301, “mppf”, “default forall intent allows modification of inout argument”, “2020-08-26T20:44:33Z”
The following program compiles even though I would expect a with (ref D)
task intent on the forall
in order for it to compile.
config const n = 1;
proc main() {
var D = {1..3};
foo(D);
}
proc foo(inout D: domain(1)) {
forall i in 1..n { // task intent required?
D = {2..4}; // race if n > 1
}
}