Թողարկվել է IWYU (կամ ներառել-ինչ-որ օգտագործում եք), ծրագիր, որը թույլ է տալիս գտնել ավելորդ և առաջարկել բացակայող #includes ձեր C/C++ կոդը:

«Ներառել այն, ինչ օգտագործում եք» նշանակում է, որ foo.cc-ում օգտագործվող յուրաքանչյուր նշանի (տեսակի, փոփոխականի, ֆունկցիայի կամ մակրո) համար կամ foo.cc կամ foo.h-ը պետք է ներառի .h ֆայլ, որն արտահանում է այդ խորհրդանիշի հայտարարությունը: «Include-what-you-use» գործիքը #include source ֆայլերը վերլուծելու ծրագիր է՝ այս մոտեցման խախտումները գտնելու և ուղղելու առաջարկություններ տալու համար: Ծրագիրը օգտագործում է Clang գրադարանները և սովորաբար թողարկումը նշանակում է համատեղելիություն Clang-ի նոր տարբերակի հետ:

Ներառելու-ինչ-դու-օգտագործման հիմնական նպատակն է հեռացնել ավելորդ #ներառումները: Դա անելու համար դուք պետք է պարզեք, թե որ #includes-ն անհրաժեշտ չէ տվյալ ֆայլում (ինչպես .cc, այնպես էլ .h-ի համար), և, հնարավորության դեպքում, փոխարինեք #include-ը նախնական հայտարարագրով։

Հիմնական փոփոխություններ

  • Համատեղելի է Clang 17-ի հետ:
  • Տիպային այլանունների բարելավված վերլուծություն (typedef և use):
  • Բարելավված անվանատարածքների անալիզների վերլուծություն (namespace xyz = foobar):
  • Ընդլայնված առաջ հայտարարագրերի բարելավված աջակցություն (typedef struct Foo Bar;):
  • Բարելավել «autocast» և գործառույթների վերադարձման տեսակների կառավարումը, հատկապես բարդ ձևանմուշների հետ աշխատելիս:
  • Ավելացվեց նոր պրագմա IWYU. always_keep վերնագիր նշելու համար, որը միշտ պետք է պահվի, որտեղ էլ որ ներառված լինի:
  • Ավտոմատ կերպով օգտագործեք քարտեզագրումներ ներկառուցված libc++-ի համար, եթե libc++-ը ակտիվ ստանդարտ գրադարանն է:
  • Բարելավված քարտեզագրումներ libc++ և posix վերնագրերի համար:

Source: linux.org.ru

Добавить комментарий