get rid of warnings that apear on either gcc or msvc