It cannot be overridden by subclasses without risking undefined behavior because there is no this pointer for it to use.
Maybe you think that, because a this pointer is needed for dynamic dispatch? A this pointer exists there, it is just not passed to the implementation.