fix for gcc/clang