Код: Выделить всё
bool has_attribute(int kvidx) const {
void* v = nullptr;
int flag = 0;
MPI_Comm_get_attr(impl_, kvidx, &v, &flag);
return flag != 0;
}
Этот код теперь дает аккуратный звук предупреждение bugprone-multi-level-implicit-pointer-conversion.
https://releases.llvm.org/18.1.0/tools/ ... ols/extra/ docs/clang-tidy/checks/bugprone/multi-level-implicit-pointer-conversion.html
Clang-tidy рекомендует: «многоуровневое преобразование указателя из 'char **' в 'void' *', используйте явное приведение"
Как применить это "явное приведение"?
Я пробовал с MPI_Comm_get_attr(impl_, kvidx, static_cast(&v), &flag); но clang все еще жалуется.
Чтобы внести ясность, код правильный AFAIK, Я пытаюсь следовать рекомендациям clang-tidy (не подавляя предупреждение)
Как можно
Подробнее здесь: https://stackoverflow.com/questions/790 ... clang-tidy