Objavljena je verzija IWYU (ili include-what-you-use), programa koji omogućava pronalaženje suvišnih i predlaganje nedostajućih #include u vašem C/C++ kodu.
„Uključiti ono što koristiš“ znači sljedeće: za svaku stavku (tip, varijablu, funkciju ili makro) korištenu u foo.cc, ili foo.cc ili foo.h moraju uključivati .h datoteku koja izvozi deklaraciju te stavke. Alat include-what-you-use je program za analizu #include izvornih datoteka s ciljem pronalaženja kršenja ovog pristupa i davanja preporuka za ispravak. Program koristi Clang biblioteke, a obično oznaka izdanja znači kompatibilnost s novom verzijom Clang.
Glavni cilj include-what-you-use je uklanjanje suvišnih #include. Za to je potrebno utvrditi koji #include nisu potrebni u datoteci (kako za .cc, tako i za .h) i, ako je moguće, zamijeniti #include s prethodnom deklaracijom.
Glavne promjene
- Kompatibilnost s Clang 17.
- Poboljšana analiza aliasa tipova (typedef i using).
- Poboljšana analiza aliasa prostora imena (namespace xyz = foobar).
- Poboljšana podrška za razrađene prethodne deklaracije (typedef struct Foo Bar;).
- Poboljšati obradu 'autokast' i povratnih tipova funkcija, osobito pri radu s složenim predlošcima.
- Dodana nova pragma IWYU: always_keep, koja omogućava označavanje zaglavlja da uvijek treba ostati, gdje god se ono uključilo.
- Automatska upotreba usklađivanja za builtins libc++, ako je libc++ aktivna standardna knjižnica.
- Poboljšanje usklađivanja za zaglavlja libc++ i posix.
Izvor: linux.org.ru
