Megjelent az IWYU (azaz include-what-you-use) kiadása, amely lehetővé teszi a felesleges #include-ok megtalálását és a hiányzó #include-ok ajánlását C/C++ kódjában.
A "Használni azt, amit használsz" azt jelenti, hogy minden egyes szimbólum (típus, változó, függvény vagy makró), amelyet a foo.cc-ben használnak, vagy a foo.cc-nek, vagy a foo.h-nak be kell töltenie a .h fájlt, amely exportálja ennek a szimbólumnak a deklarációját. Az include-what-you-use eszköz egy program a forrásfájlok #include-jainak elemzésére, amelynek célja a megközelítés megsértéseinek azonosítása és a helyesbítésére vonatkozó javaslatok kiadása. A program a Clang könyvtáraira támaszkodik, és általában a kiadás új Clang verzióval való kompatibilitást jelent.
Az include-what-you-use fő célja a felesleges #include-ok eltávolítása. Ehhez meg kell határozni, hogy mely #include-ok nem szükségesek az adott fájlban (mind .cc, mind .h esetén), és ahol csak lehetséges, a #include-t előzetes deklarációval kell helyettesíteni.
Főbb változások
- Kompatibilitás a Clang 17-tel.
- Javított típusaliasok (typedef és using) elemzése.
- Javított névtéraliasok (namespace xyz = foobar) elemzése.
- Javított kiterjesztett előzetes deklarációk támogatása (typedef struct Foo Bar;).
- A "autokonverzió" és a visszatérő függvénytípusok feldolgozásának javítása, különösen összetett sablontípusok esetén.
- Új IWYU pragma került hozzáadásra: always_keep, amely lehetővé teszi egy fejlécre, hogy mindig megmaradjon, bárhol is legyen betöltve.
- Automatikus megfeleltetés alkalmazása a libc++ beépített könyvtárakhoz, ha a libc++ az aktív standard könyvtár.
- A libc++ és posix fejlécfájlok megfeleltetésének javítása.
Forrás: linux.org.ru
