Eigenpoll : D wish list : Explicit out/inout
Force specifying out and inout when calling a function as well as when specifying it. I.e.:
void foo(int bar, out char baz, inout bit qux) { ... }
...
char x;
bit y = false;
foo(4, out x, inout y);
Leaves no room for ambiguity like the "multiple return values" suggestion (unfortunately) does, but still clarifies syntax somewhat - how do you know whether foo(4, x, y) does anything to x and y or not? With explicitness of out and inout it's obvious.
Report this item for cleanup