Для следующего фрагмента
#include <stdio.h>
enum index{
one = 5,
two,
three,
four,
five
};
int fun(){
int arr[3] = {1,2,3};
int i = arr[index::one];
printf("%d\n", i);
int j = arr[index::four];
printf("%d\n", j);
return 0;
}
Диагностика лязг сообщает о двух предупреждениях (что на самом деле правильно)
тогда как проверка clang сообщает только об одной ошибке. Кроме того, предупреждающее сообщение отличается в обоих случаях.
Выход:
Так почему же Clang Diagnostic может обнаружить все предупреждения, но не Clang-Check?
Задача ещё не решена.
Других решений пока нет …