Fix warning on clang, fix compatibility on other compiler