IWYU (eller include-what-you-use) er blevet frigivet, et program, der gør det muligt at finde overflødige og foreslå manglende #include i din C/C++-kode.
«Inkluder det, du bruger» betyder følgende: For hver symbol (type, variabel, funktion eller makro), der bruges i foo.cc, skal enten foo.cc eller foo.h inkludere .h-filen, der eksporterer erklæringen af dette symbol. Include-what-you-use-værktøjet er et program til at analysere #include i kildefiler med det formål at finde overtrædelser af denne tilgang og give anbefalinger til at rette dem. Programmet bruger Clang-biblioteker og normalt betyder frigivelsen kompatibilitet med den nyeste version af Clang.
Hovedmålet med include-what-you-use er at fjerne unødvendige #include. For at gøre dette er det nødvendigt at finde ud af, hvilke #include der ikke er nødvendige i den pågældende fil (både for .cc og .h), og hvor det er muligt erstatte #include med en fremadgående erklæring.
Vigtige ændringer
- Kompatibilitet med Clang 17.
- Forbedret analyse af typealiaser (typedef og using).
- Forbedret analyse af navneområder (namespace xyz = foobar).
- Forbedret støtte til udvidede fremadgående erklæringer (typedef struct Foo Bar;).
- Forbedre håndteringen af 'autokast' og returtyper af funktioner, især når der arbejdes med komplekse skabelontyper.
- Ny IWYU-pragmat tilføjet: always_keep, der gør det muligt at markere en header, så den altid skal bevares, uanset hvor den inkluderes.
- Automatisk brug af matchninger for libc++-builtins, hvis libc++ er det aktive standardbibliotek.
- Forbedring af matchninger for libc++- og posix-headers.
Kilde: linux.org.ru
