Introduce error type.
Forget c++03 compatibility.