Як придушити всі попередження у Xcode у Xcode?


137

У своїй програмі я використовую сторонній код, який викликає деякі попередження. Я переглянув їх, і їх можна сміливо ігнорувати.

Тепер я хочу якось "позначити" файл, тому Xcode не відображатиме жодних попереджень для коду у цьому файлі.

Як мені це зробити?

Відповіді:


277

Виберіть ціль і покажіть фази збірки. Потім введіть ім'я файлу в поле пошуку, і ви повинні побачити його, перелічене на етапі "Компіляція джерел". Двічі клацніть у стовпці "Компілятори" для цього файлу та введіть, -wщоб вимкнути всі попередження для цього файлу.


9
Хм, я розраховував -wвимкнути всі попередження, але, можливо, новий компілятор на це не звертає уваги. У такому випадку вимкніть окремі попередження. Знайдіть відповідне попередження у Налаштуваннях збірки та покажіть Швидку допомогу у вікні Утиліти. Ви повинні побачити опис із -Wname-of-warningсинтаксисом. Додайте "ні-" до імені та вкажіть це у "Прапори компілятора". Приклад: щоб вимкнути, -Wunused-parameterвкажіть-Wno-unused-parameter
Jon Reid

14
Виявляється, все це залежить від компілятора. Я маю на увазі, що в одному з проектів, що використовує компілятор LLVM GCC, -wвиходить хитрість, а в іншому проекті, який використовує звичайний компілятор GCC -Wno-name-of-warning- єдиний шлях.
Бобровський

6
Дякую за підказку, яка також працювала для мене ( -wі LLVM). Дійсно зручно, коли ви включаєте файли третьої сторони, яких ви не можете редагувати.
користувач826955

1
@Zammbi Оскільки код генерується автоматично, виправте його, щоб генерувати код без попереджень. Якщо ви не можете цього зробити, автоматично закріпіть проект Xcode, щоб встановити прапор компілятора.
Джон Рейд

11
Не працює з Swift 2 за допомогою Xcode 7.0 та Apple LLVM 7.0
King-Wizard

6

Виберіть Проект у лівому навігаторі та оберіть цільовий перехід до фази збірки та Введіть -w у фазу збірки цільового файлу. Він приховає всі попередження компілятора введіть тут опис зображення


17
Не працює з Swift 2 за допомогою Xcode 7.0 та Apple LLVM 7.0
King-Wizard

2
передача прапорів компілятора Clang іноземному компілятору не працює. quelle сюрприз ... google попереджувальний прапор для швидкого компілятора та додайте його замість цього.
jheriko

4

Це працює для Xcode 10.2+ та Swift 5

Виправлення вручну:

Додайте -w -Xanalyzer -analyzer-disable-all-checksдо проблемного файлу з Xcode> Project> Targets> Compile Source> Двічі клацніть файл, у якому потрібно вимкнути попередження.

Виправлення какаопів:

Якщо ви намагаєтесь придушити попередження з проблемної стручки, ви можете автоматично придушити всі попередження від залежності inhibit_warningsпрапором у вашому підфілі :

pod 'Kingfisher', '~> 4.6', :inhibit_warnings => true

введіть тут опис зображення


Спасибі какаодів відпрацювали частування, дякую!
adougies
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.