Resultados da reconstrución da base de datos de paquetes Debian usando Clang 10

Sylvestre Ledru publicado o resultado de reconstruír o arquivo de paquetes Debian GNU/Linux usando o compilador Clang 10 en lugar de GCC. Dos 31014 paquetes, 1400 (4.5%) non se puideron construír, pero ao aplicar un parche adicional ao kit de ferramentas de Debian, o número de paquetes sen construír reduciuse a 1110 (3.6%). A modo de comparación, ao construír en Clang 8 e 9, o número de paquetes que non se puideron construír mantívose no 4.9%.

O experimento de construción centrouse en 250 problemas causados ​​por accidentes debidos a Erros en Qmake, e 177 números, relacionados coa xeración de varios símbolos nas bibliotecas. Engadindo un parche sinxelo a dpkg-gensymbols para tratar un erro de comparación de símbolos ao ligar como unha advertencia, e substituíndo os ficheiros de configuración de g++ en qmake, puidemos corrixir os fallos na construción duns 290 paquetes.

Do resto problemas, que leva a un fallo de compilación en Clang, os erros máis comúns débense á ausencia dalgúns ficheiros de cabeceira, a conversión de tipos, a falta de espazo entre un literal e un identificador, problemas coa vinculación, a falla de devolver un valor dunha función non vacía. , usando unha comparación ordenada dun punteiro con null , falta de definicións.

Fonte: opennet.ru

Engadir un comentario