有的代码可以正常编译,但似乎有些涉及到类似throw exception的代码就不行
0 0x1044cf648 __assert_rtn + 72
1 0x104403fac ld::AtomPlacement::findAtom(unsigned char, unsigned long long, ld::AtomPlacement::AtomLoc const*&, long long&) const + 1204
2 0x104419924 ld::InputFiles::SliceParser::parseObjectFile(mach_o::Header const*) const + 15164
3 0x104426e30 ld::InputFiles::parseAllFiles(void (ld::AtomFile const*) block_pointer)::$_7::operator()(unsigned long, ld::FileInfo const&) const + 420
4 0x18090b950 _dispatch_client_callout2 + 20
5 0x18091eba0 _dispatch_apply_invoke + 176
6 0x18090b910 _dispatch_client_callout + 20
7 0x18091d3cc _dispatch_root_queue_drain + 864
8 0x18091da04 _dispatch_worker_thread2 + 156
9 0x180ab50d8 _pthread_wqthread + 228
ld: Assertion failed: (resultIndex < sectData.atoms.size()), function findAtom, file Relocations.cpp, line 1336.
collect2: error: ld returned 1 exit status
会出现这样的奇特报错,不知是什么原因,代码本身应该没有错误。
文章描述了在编译代码时遇到的异常,尽管某些代码能正常编译,但涉及`throwexception`的部分引发了`ld:Assertionfailed`错误,具体指向`findAtom`函数。开发者表示代码本身没有错误,可能是解析过程中某个环节的问题。
2545

被折叠的 条评论
为什么被折叠?



