C++98 compliant for real.