Как отключить указание clang-cl c предупреждений в проекте VS - PullRequest
0 голосов
/ 27 апреля 2020

Я использую сторонний проект, который выдает огромное количество предупреждений. Я отключаю их все в свойствах проекта VS. Иногда я переключаюсь на набор инструментов LLVM clang-cl, чтобы проверить предупреждения от clang. Сторонний проект выдает так много предупреждений с помощью clang-cl, что VS задыхается от количества вывода. Я знаю, как их отключить, я делаю это с помощью аргументов командной строки, например: Wno-int-conversion -Wno-shift-op-parentheses et c. Проблема, однако, когда я переключаюсь обратно на набор инструментов VS, все эти параметры командной строки для отключения предупреждений от clang-cl становятся ошибками (неизвестные аргументы строки cmd) с компилятором MS.

Есть ли способ получить настройки clang и VS в одном проекте VS? Может быть, как-то условно для набора инструментов ClangCL их можно добавить только для сборок clang-cl?

1 Ответ

0 голосов
/ 27 апреля 2020

Первое, что я попробовал, сработало сразу, на случай, если кому-то понадобится решить ту же проблему:

  <AdditionalOptions Condition="'$(PlatformToolset)'!='ClangCL'">/w24003 /w24005 ... %(AdditionalOptions)</AdditionalOptions>
  <AdditionalOptions Condition="'$(PlatformToolset)'=='ClangCL'">-Wno-unknown-pragmas -Wno-unused-variable ...  %(AdditionalOptions)</AdditionalOptions>

Таким образом, используя LLVM clang-cl набор инструментов с VS only clang cpecifi c применяются строковые параметры, и при использовании компилятора ms применяются только опции компилятора ms * c.

...