clang, clang-tidy и g cc в порядке, И код работает (конечно, в другом контексте), но если я использую cppcheck, я получаю синтаксическую ошибку из ниоткуда.
cppcheck --enable=all --inconclusive --std=c++11 --std=posix --suppress=missingIncludeSystem main.cpp
-> наименьший рабочий образец ->
#include <iostream>
#include <list>
#include <type_traits>
#include <vector>
template <class T>
void operate(T &container)
{
if constexpr( std::is_same<T, std::vector<int>>::value)
{
container.sort();
}
return;
}
int main()
{
std::list<int> vv{-1,4,-4,0,4,2,5,-2};
operate(vv);
return 0;
}
Результат -> [main. cpp: 19]: (ошибка) синтаксическая ошибка
Версия -> Cppcheck 1.82
Любая помощь приветствуется, спасибо: -)