fix compliance with C++ standard