before merge
GNU c++ warns eliminated