ซิลเวสเตอร์ เลดรู результат пересборки архива пакетов Debian จีนู/Linux с использованием компилятора Clang 10 вместо GCC. Из 31014 пакетов не удалось собрать 1400 (4.5%), но применив к инструментарию Debian дополнительный патч число несобранных пакетов удалось уменьшить до 1110 (3.6%). Для сравнения при сборке в Clang 8 и 9 число пакетов, которые не удалось собрать, держалось на уровне 4.9%.
การทดลองสร้างมุ่งเน้นไปที่ปัญหา 250 ปัญหาที่เกิดจากการขัดข้องเนื่องจาก ใน Qmake และ 177 ฉบับ กับการกำเนิดสัญลักษณ์ต่างๆในห้องสมุด ด้วยการเพิ่มแพตช์ง่ายๆ ให้กับ dpkg-gen Symbols เพื่อรักษาข้อผิดพลาดในการเปรียบเทียบสัญลักษณ์เมื่อลิงก์เป็นคำเตือน และด้วยการแทนที่ไฟล์การกำหนดค่า g++ ใน qmake เราก็สามารถแก้ไขความล้มเหลวในการสร้างแพ็คเกจประมาณ 290 รายการได้
จากส่วนที่เหลือ ซึ่งนำไปสู่ความล้มเหลวในการสร้างใน Clang ข้อผิดพลาดที่พบบ่อยที่สุดเกิดจากการไม่มีไฟล์ส่วนหัวบางไฟล์ การหล่อประเภท ช่องว่างระหว่างลิเทอรัลและตัวระบุหายไป ปัญหาเกี่ยวกับการโยง ความล้มเหลวในการส่งคืนค่าจากฟังก์ชันที่ไม่เป็นโมฆะ โดยใช้การเปรียบเทียบแบบเรียงลำดับของตัวชี้กับ null ขาดคำจำกัดความ
ที่มา: opennet.ru
