GHC segfault at internal_dlopen on macos
Hello. I got a segfault crash from GHC 9.4.4 while compilng a big private project on macos Ventura 13.2.1 on Apple M1 max device. I was able to get a Core dump which seems to indicate the segfault happened in "internal_dlopen": It's not clear whether this is a GHC issue or linker issue, but report this here.
(lldb) bt
* thread #29, stop reason = ESR_EC_DABORT_EL0 (fault address: 0x8ab639e00)
* frame #0: 0x00000001ad440f90 dyld`lsl::Allocator::free(void*) + 60
frame #1: 0x00000001ad43fc2c dyld`lsl::UniquePtr<char const>::~UniquePtr() + 52
frame #2: 0x00000001ad43f570 dyld`dyld4::FileRecord::~FileRecord() + 52
frame #3: 0x00000001ad4276f8 dyld`lsl::UniquePtr<dyld4::Atlas::Image>::~UniquePtr() + 68
frame #4: 0x00000001ad453a9c dyld`lsl::BTree<lsl::UniquePtr<dyld4::Atlas::Image>, std::__1::less<lsl::UniquePtr<dyld4::Atlas::Image> >, false>::NodeCore<31u, 15u>::deallocateChildren() + 116
frame #5: 0x00000001ad453a68 dyld`lsl::BTree<lsl::UniquePtr<dyld4::Atlas::Image>, std::__1::less<lsl::UniquePtr<dyld4::Atlas::Image> >, false>::NodeCore<31u, 15u>::deallocateChildren() + 64
frame #6: 0x00000001ad453a68 dyld`lsl::BTree<lsl::UniquePtr<dyld4::Atlas::Image>, std::__1::less<lsl::UniquePtr<dyld4::Atlas::Image> >, false>::NodeCore<31u, 15u>::deallocateChildren() + 64
frame #7: 0x00000001ad427678 dyld`lsl::BTree<lsl::UniquePtr<dyld4::Atlas::Image>, std::__1::less<lsl::UniquePtr<dyld4::Atlas::Image> >, false>::clear() + 32
frame #8: 0x00000001ad42700c dyld`dyld4::RuntimeState::freeProcessSnapshot() + 60
frame #9: 0x00000001ad44c990 dyld`dyld4::APIs::dlopen_from(char const*, int, void*) + 932
frame #10: 0x00000001050f28dc libHSrts_thr-ghc9.4.4.dylib`internal_dlopen + 44
frame #11: 0x00000001050f27a4 libHSrts_thr-ghc9.4.4.dylib`addDLL + 36
frame #12: 0x0000000104c41f10 libHSghci-9.4.4-ghc9.4.4.dylib`Lc3gS_info + 36
frame #13: 0x00000001050fe134 libHSrts_thr-ghc9.4.4.dylib`schedule + 1176