The following does compile, but has other problems:
class A
{
protected:
A() {}
};
namespace A
{
class B : public A
{
public:
B() : A() {}
};
};
The problem is that if you later try to refer to class A, the compiler
claims it is not a class, it's a namespace. Aren't cl***** by
definition namespaces? Something seems broken here.
Again, using gcc version 4.1.3.
Richard