r...@zedat.fu-berlin.de (Stefan Ram) writes:
> [Quoted text removed due to X-No-Archive]
In C, you can write
void fn(void)
{
struct same { int same; };
struct same same;
same.same = 0;
}
and there is no ambiguity; same means the variable,
struct same means the type, and same.same means the
data member. I suppose C++ tries to be compatible
with C header files that define such structures,
and therefore cannot forbid them outright.