Na ovoj stranici

Konfigurirajte Clang dijagnostiku

Otkrijte probleme u programima napisanim u jezicima C, C++ i Objective-C pomoću alata Clang-Tidy i Clazy.

Za odabir i uređivanje provjera Clanga koje se žele izvršiti:

  1. Odaberite Postavke > Analyzer > Clang Tools.

     kartica Clang Tools u postavkama Analyzera

  2. Polje Diagnostic configuration prikazuje provjere koje se trebaju izvršiti. Odaberite vrijednost polja kako biste otvorili dijalog Diagnostic Configurations, gdje možete odabrati i urediti provjere koje se trebaju izvršiti.

    Dijalog dijagnostičkih konfiguracija

    Da biste umjesto toga izvršili provjere iz konfiguracijske datoteke Clang-Tidy, odaberite Prefer .clang-tidy file, if present na kartici Clang Tools.

    Odaberite xml-ph-0000@deepl.internal za kopiranje odabranih dijagnostika radi uređivanja.
  3. Odaberite Copy kako biste kopirali odabrane dijagnostike za uređivanje.

    Kopiraj dijalog dijagnostičkih konfiguracija

  4. U polju Diagnostic configuration name unesite naziv konfiguracije, a zatim odaberite OK.
  5. Na kartici Clang Warnings odaberite Use diagnostic flags from the build system kako biste proslijedili dijagnostičke zastavice, poput upozorenja, iz sustava za izgradnju u Clang model koda za prikazivanje anotacija u uređivaču koda.
  6. Na kartici Clang-Tidy Checks odaberite Select Checks kako biste odabrali provjere koje ćete izvršiti. Za filtriranje provjera unesite niz u polje Filter by name.

    Clang-Tidy provjere kartica u dijaloškom okviru konfiguracija za dijagnostiku

    Za više informacija o dostupnim provjeravateljima pogledajte dokumentaciju za Clang Static Analyzer.

  7. Za uređivanje odabranih provjera kao običnog teksta odaberite Edit Checks as String.
  8. Na kartici Clazy Checks odaberite razinu provjera Clazy koje ćete izvršiti.

    Clazy Checks kartica u dijaloškom okviru Konfiguracije dijagnostike

  9. Za uređivanje odabranih provjera kao običnog teksta odaberite Edit Checks as String.
  10. U polju Filters odaberite teme kako biste u polju Checks vidjeli samo provjere povezane s tim područjima. Za filtriranje provjera u odabranim područjima unesite niz u polje Filter by name.
  11. Da biste ponovno vidjeli sve provjere, odaberite Reset Topic Filter.
  12. Za pregled više informacija o provjerama na mreži odaberite poveznice Web Page pored njih.

Odabir razina Clazy provjera

Clazy provjere podijeljene su u razine od 0 do 3. Provjere na razini 0 vrlo su stabilne i gotovo ne pokazuju lažno pozitivne rezultate, dok su provjere na razini 3 eksperimentalne. Možete odabrati provjere koje će se izvršiti na svakoj razini. Kako biste automatski uključili provjere s nižih razina, odaberite Enable lower levels automatically.

Izrada konfiguracijskih datoteka za Clang-Tidy

Clang-Tidy čita konfiguraciju za svaku izvorna datoteku iz .clang-tidy datoteke smještene u najbližem nadređenom direktoriju te izvorne datoteke. Ako neka opcija konfiguracije ima odgovarajuću opciju na naredbenom retku, opcija na naredbenom retku ima prednost. Učinkovitu konfiguraciju možete pregledati pomoću naredbe -dump-config.

Qt Creator stvara konfiguraciju za vas na temelju provjera koje odaberete. Da biste spremili provjere u datotečnom formatu, možete stvoriti .clang-tidy datoteku na sljedeći način:

  1. Odaberite Edit Checks as String i kopirajte sadržaj polja.
  2. Usmjerite izlaz naredbe clang-tidy -dump-config u datoteku naziva .clang-tidy. Na primjer: clang-tidy -checks=-*,bugprone-*,cppcoreguidelines-avoid-* -dump-config > .clang-tidy
  3. Premjestite .clang-tidy datoteku u nadređeni direktorij izvornog koda.

Kako biste kasnije dodali više provjera pomoću Qt Creator, kopirajte provjere iz svoje .clang-tidy datoteke u polje Edit Checks as String, odaberite dodatne provjere i zalijepite sadržaj polja u .clang-tidy datoteku.

Vidi također Analizirajte kod pomoću Clang-Tidyja i Clazyja, Postavite postavke alata Clang i Clang Tools.

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.