Hi, The build for ghc-cryptonite failed in the mass rebuild [1] and a later rebuild by me [2], but only on s390x. The failure appears to be LTO related. This doesn't appear to affect many other Haskell packages. (I've found one seemingly-related failure in ghc-haskell-src-exts [3].) Since it's Haskell, I'm using the standard macros that should pass consistent flags, etc., so I'm not sure what more information I can provide.
What happens is that ld.gold warns about mixed LTO/non-LTO: [ 1 of 131] Compiling Crypto.Cipher.DES.Primitive ( Crypto/Cipher/DES/Primitive.hs, dist/build/Crypto/Cipher/DES/Primitive.p_o ) /usr/bin/ld.gold: warning: incremental linking of LTO and non-LTO objects; using -flinker-output=nolto-rel which will bypass whole program optimization and then errors out because of many LTO mismatches like: /tmp/ghc794663_0/ghc_19.c:11:19: error: warning: type of ‘cryptonitezm0zi26zmIKFu0XykBrR53imeIPM2Uw_CryptoziCipherziDESziPrimitive_CAFs_cc’ does not match original declaration [-Wlto-type-mismatch] 11 | extern CostCentre cryptonitezm0zi26zmIKFu0XykBrR53imeIPM2Uw_CryptoziCipherziDESziPrimitive_CAFs_cc[]; | ^ | 11 | extern CostCentre cryptonitezm0zi26zmIKFu0XykBrR53imeIPM2Uw_CryptoziCipherziDESziPrimitive_CAFs_cc[]; | ^ /tmp/ghc794663_0/ghc_18.hc:44:9: error: note: type ‘StgWord’ should match type ‘struct CostCentre’ 44 | StgWord cryptonitezm0zi26zmIKFu0XykBrR53imeIPM2Uw_CryptoziCipherziDESziPrimitive_CAFs_cc[]__attribute__((aligned(8)))= { | ^ | 44 | StgWord cryptonitezm0zi26zmIKFu0XykBrR53imeIPM2Uw_CryptoziCipherziDESziPrimitive_CAFs_cc[]__attribute__((aligned(8)))= { | ^ /tmp/ghc794663_0/ghc_18.hc:44:9: error: note: ‘cryptonitezm0zi26zmIKFu0XykBrR53imeIPM2Uw_CryptoziCipherziDESziPrimitive_CAFs_cc’ was previously declared here | 44 | StgWord cryptonitezm0zi26zmIKFu0XykBrR53imeIPM2Uw_CryptoziCipherziDESziPrimitive_CAFs_cc[]__attribute__((aligned(8)))= { | ^ /tmp/ghc794663_0/ghc_18.hc:44:9: error: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used | 44 | StgWord cryptonitezm0zi26zmIKFu0XykBrR53imeIPM2Uw_CryptoziCipherziDESziPrimitive_CAFs_cc[]__attribute__((aligned(8)))= { | ^ followed by inlining failures: /usr/include/bits/string_fortified.h: In function ‘fill_segment’: /usr/include/bits/string_fortified.h:59:1: error: error: inlining failed in call to ‘always_inline’ ‘memset’: function body can be overwritten at link time 59 | __NTH (memset (void *__dest, int __ch, size_t __len)) | ^ | 59 | __NTH (memset (void *__dest, int __ch, size_t __len)) | ^ [1] https://koji.fedoraproject.org/koji/taskinfo?taskID=47957210 [2] https://koji.fedoraproject.org/koji/taskinfo?taskID=48408236 [3] https://koji.fedoraproject.org/koji/taskinfo?taskID=48322376 -- Elliott _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org