Sylvestre Ledru Das Ergebnis des Neuaufbaus des Debian GNU/Linux-Paketchens mit dem Compiler Clang 10 anstelle von GCC. Von 31014 Paketen konnten 1400 (4,5 %) nicht erstellt werden. Durch die Anwendung eines zusÀtzlichen Patches auf das Debian-Toolkit konnte die Anzahl der nicht erstellten Pakete auf 1110 (3,6 %) reduziert werden. Zum Vergleich: Bei der Erstellung mit Clang 8 und 9 blieb die Anzahl der nicht erstellten Pakete bei 4,9 %.
Im Rahmen des Experiments zur Erstellung wurde der Fokus auf 250 Probleme gelegt, die durch AbstĂŒrze in Qmake verursacht wurden, und 177 Probleme, der Generierung verschiedener Symbole in Bibliotheken verbunden waren. Durch das HinzufĂŒgen eines einfachen Patches zu dpkg-gensymbols, der den Fehler beim Vergleich von Symbolen beim Linken als Warnung behandelt, und den Austausch der Konfigurationsdateien von g++ in qmake konnten AbstĂŒrze bei der Erstellung von etwa 290 Paketen behoben werden.
Von den verbleibenden , die zu Fehlern beim Bauen in Clang fĂŒhren, sind am hĂ€ufigsten Fehler aufgrund fehlender Header-Dateien, Typumwandlungen, fehlenden Leerzeichen zwischen Literal und Bezeichner, Bindungsprobleme, das Fehlen eines RĂŒckgabewerts aus einer nicht-void Funktion sowie die Verwendung eines geordneten Vergleichs eines Zeigers mit Null und fehlende Definitionen.
Quelle: opennet.ru
