clang implicit conversion fixed