hide enum as bitfield base type extension behind a macro
fix clang warning