Shadowing of members
Benjamin Thaut
code at benjamin-thaut.de
Wed Jan 9 12:36:16 PST 2013
After some refactoring I had a series of bugs that came from renaming
class members so that the following situation was present.
class foo
{
float a;
void doSomething()
{
float a;
a = a * 2.0;
}
}
The local variable a shadows the member a after the refactoring and
therefore this code will no longer work as expected. This was quite time
consuming to track down. So I wanted to ask if we want to prevent that
with a warning or even an error? D does not allow shadowing of local
variables, so why is it allowed for members?
Kind Regards
Benjamin Thaut
More information about the Digitalmars-d
mailing list