better static warning and avoiding clang var arg warning