Debiani pakettide andmebaasi taastamise tulemused Clang 10 abil

Sylvestre Ledru avaldatud Debian GNU/Linuxi paketiarhiivi taastamise tulemus, kasutades GCC asemel kompilaatorit Clang 10. 31014 1400 paketist 4.5 (1110%) ei saanud ehitada, kuid Debiani tööriistakomplektile täiendava paiga rakendamisega vähendati ehitamata pakettide arvu 3.6-ni (8%). Võrdluseks, Clang 9 ja 4.9 ehitades jäi ehitamata pakettide arv XNUMX% juurde.

Ehitamise katse keskendus 250 probleemile, mis olid põhjustatud krahhidest Vead Qmake'is ja 177 numbrit, seotud erinevate sümbolite genereerimisega raamatukogudes. Lisades dpkg-gensymbolsile lihtsa paiga, et käsitleda sümbolite võrdlusviga linkimisel hoiatusena, ja asendades qmake'is g++ konfiguratsioonifailid, suutsime parandada umbes 290 paketi koostamise tõrked.

Ülejäänutest probleeme, mis põhjustab Clangis koostamise tõrke, on kõige levinumad vead tingitud mõne päisefaili puudumisest, tüübi ülekandmisest, tühiku puudumisest literaali ja identifikaatori vahel, probleemidest sidumisel, väärtuse tagastamise ebaõnnestumisest funktsioonist, mis ei ole tühine. , kasutades kursori järjestatud võrdlust nulliga, definitsioonide puudumine.

Allikas: opennet.ru

Lisa kommentaar