http://eel.is/c++draft/class.derived.general#2.sentence-2
Everything works correctly but such diagnostic would be good.
class Base {
public:
int base;
};
typedef const Base ConstBase;
class CDerived: public ConstBase {
public:
int derived;
};
https://godbolt.org/z/1ns8Tc7Ko