contract Parent {
string private name;
constructor(string memory _name) {
name = _name;
}
function getName() public view virtual returns (string memory) {
return name;
}
}
contract Child is Parent {
// error, name hasn't been set!
function getName() public view override returns (string memory) {
return super.getName();
}
}