Resultados de reconstruir la base de datos del paquete Debian usando Clang 10
Sylvestre Ledrú publicado el resultado de reconstruir el archivo del paquete Debian GNU/Linux usando el compilador Clang 10 en lugar de GCC. De los 31014 paquetes, 1400 (4.5%) no se pudieron compilar, pero al aplicar un parche adicional al kit de herramientas de Debian, el número de paquetes no compilados se redujo a 1110 (3.6%). A modo de comparación, al construir en Clang 8 y 9, la cantidad de paquetes que no se pudieron construir se mantuvo en el 4.9%.
El experimento de construcción se centró en 250 problemas causados por fallas debido a Errores en Qmake, y 177 números, conexo con la generación de diversos símbolos en las bibliotecas. Al agregar un parche simple a dpkg-gensymbols para tratar un error de comparación de símbolos al vincular como una advertencia, y al reemplazar los archivos de configuración de g++ en qmake, pudimos corregir fallas al compilar alrededor de 290 paquetes.
Del resto проблем, lo que lleva a una falla de compilación en Clang, los errores más comunes se deben a la ausencia de algunos archivos de encabezado, conversión de tipos, falta de espacio entre un literal y un identificador, problemas con el enlace, falla al devolver un valor de una función no nula , utilizando una comparación ordenada de un puntero con nulo, falta de definiciones.