Pull to refresh

Comments 7

Вообще непонятно при чем тут этот cmake, если речь идет об анализе кода с помощью pvs-studio.

Так ведь анализируется исходный код самого cmake

А, теперь понял:) Об этом упоминается, но получилось как-то незаметно.

Насчёт swap, у вас есть проверка что std::swap вызывается на dependent типе или типе у которого есть adl swap?

Здравствуйте! Извините за долгий ответ. Не совсем поняла ваш вопрос. Не могли бы вы уточнить, что вы подразумеваете под проверкой?
Наш анализатор понимает, что std::swap вызывается на dependent типе и/или через ADL. Однако, если вы имеете ввиду предупреждение, которые должно выдаваться в таком случае, то пока у нас такого нет. Если вы имели ввиду это, то можете, пожалуйста, подробнее расписать, что оно должно выявлять?

void foo (auto& a, auto& b) {
   std::swap(a, b); // предупреждение, нужно написать using std::swap; swap(a, b)
}
struct A {

  friend void swap(A&, A&);
};


void bar(A& a, A& b) {
   std::swap(a, b); // предупреждение: вызывается std::swap, хотя есть ADL специализация для типа A
}
Sign up to leave a comment.

Information

Website
pvs-studio.ru
Registered
Founded
2008
Employees
51–100 employees
Location
Россия
Representative
Андрей Карпов