Sylvestre Ledru resultatet av omkompilering av paketarkivet Debian GNU/Linux med anvÀndning av kompilatorn Clang 10 istÀllet för GCC. Av 31014 paket kunde 1400 (4.5%) inte kompileras, men genom att tillÀmpa en extra patch pÄ Debian-verktygen kunde antalet icke-kompilerade paket minskas till 1110 (3.6%). JÀmförande vid kompilering med Clang 8 och 9 lÄg antalet paket som inte kunde kompileras pÄ 4.9%.
Under experimentet med omkompileringen fokuserades uppmÀrksamheten pÄ 250 problem orsakade av krasch pÄ grund av i Qmake, och 177 problem, till generering av olika symboler i biblioteken. Genom att lÀgga till en enkel patch till dpkg-gensymbols, som behandlar fel med symboljÀmförelse vid lÀnkning som en varning, och genom att byta ut g++ i qmake konfigurationsfiler, kunde krascher vid kompileringen av cirka 290 paket ÄtgÀrdas.
Av de övriga , som ledde till krascher vid kompilering i Clang, Àr de vanligaste felen orsakade av avsaknad av vissa header-filer, typkonverteringar, avsaknad av mellanslag mellan litteral och identifierare, lÀnkproblem, avsaknad av returvÀrde frÄn en icke-void funktion, anvÀndning av ordnat jÀmförelse av pekare mot null, avsaknad av definitioner.
KĂ€lla: opennet.ru
