disallow shadowing expression members in `with` statements
Currently the following code is allowed:
class Foo {
public void bar () {}
}
void main() {
with (new Foo ()) {
bar ();
int bar = 3;
bar = 4;
// bar () is now disallowed because bar is now associated with a local variable
}
}
The behavior seems awkward. I think Vala should forbid shadowing an expression member with a new local variable.