Can this be made a compiler warning? struct Foo { int i; } void main() { Foo foo; with (foo) { i = 42; int i; i = 24; } } I'm hesitant to file a bug because it'll just be immediately closed with a link to https://dlang.org/spec/statement.html#WithStatement. I understand that's how it works, but it's weird and weak to human mistakes.