I thought that we can redeclare a name any times in any context. But
class A
{
static int a;
static int a;
};
returns a compile-time error:
test.cpp:4:13: error: redeclaration of ‘int A::a’
test.cpp:3:13: note: previous declaration ‘int A::a’
What names can be redeclare actually?