The Problem in this link https://github.com/emscripten-core/emscripten/issues/9023 is very like mine.
The difference is our backstrace My backstrace is: wasm-ld: /b/s/w/ir/cache/builder/emscripten-releases/llvm-project/llvm/include/llvm/ADT/Optional.h:177: const T &llvm::optional_detail::OptionalStorage<unsigned int, true>::getValue() const & [T = unsigned int]: Assertion `hasVal' failed. #0 0x00007f282876e164 PrintStackTraceSignalHandler(void*) (/root/emsdk/upstream/bin/../lib/libLLVM-10svn.so+0x6ca164) #1 0x00007f282876be1e llvm::sys::RunSignalHandlers() (/root/emsdk/upstream/bin/../lib/libLLVM-10svn.so+0x6c7e1e) #2 0x00007f282876e418 SignalHandler(int) (/root/emsdk/upstream/bin/../lib/libLLVM-10svn.so+0x6ca418) #3 0x00007f282b5985d0 __restore_rt (/lib64/libpthread.so.0+0xf5d0) #4 0x00007f28274742c7 raise (/lib64/libc.so.6+0x362c7) #5 0x00007f28274759b8 abort (/lib64/libc.so.6+0x379b8) #6 0x00007f282746d0e6 __assert_fail_base (/lib64/libc.so.6+0x2f0e6) #7 0x00007f282746d192 (/lib64/libc.so.6+0x2f192) #8 0x00000000006a8f22 (/root/emsdk/upstream/bin/wasm-ld+0x6a8f22) #9 0x00000000006916b7 lld::wasm::InputChunk::writeTo(unsigned char*) const (/root/emsdk/upstream/bin/wasm-ld+0x6916b7) #10 0x00000000006c0b3d lld::wasm::CustomSection::writeTo(unsigned char*) (/root/emsdk/upstream/bin/wasm-ld+0x6c0b3d) #11 0x00000000006bc80d std::_Function_handler<void (), void llvm::parallel::detail::parallel_for_each<__gnu_cxx::__normal_iterator<lld::wasm::OutputSection**, std::vector<lld::wasm::OutputSection*, std::allocator<lld::wasm::OutputSection*> > >, (anonymous namespace)::Writer::writeSections()::$_0>(__gnu_cxx::__normal_iterator<lld::wasm::OutputSection**, std::vector<lld::wasm::OutputSection*, std::allocator<lld::wasm::OutputSection*> > >, __gnu_cxx::__normal_iterator<lld::wasm::OutputSection**, std::vector<lld::wasm::OutputSection*, std::allocator<lld::wasm::OutputSection*> > >, (anonymous namespace)::Writer::writeSections()::$_0)::'lambda'()>::_M_invoke(std::_Any_data const&) (/root/emsdk/upstream/bin/wasm-ld+0x6bc80d) #12 0x00007f2828703c85 std::_Function_handler<void (), llvm::parallel::detail::TaskGroup::spawn(std::function<void ()>)::$_0>::_M_invoke(std::_Any_data const&) (/root/emsdk/upstream/bin/../lib/libLLVM-10svn.so+0x65fc85) #13 0x00007f2828703867 llvm::parallel::detail::(anonymous namespace)::ThreadPoolExecutor::work() (/root/emsdk/upstream/bin/../lib/libLLVM-10svn.so+0x65f867) #14 0x00007f28287036f7 std::thread::_Impl<std::_Bind_simple<llvm::parallel::detail::(anonymous namespace)::ThreadPoolExecutor::ThreadPoolExecutor(unsigned int)::'lambda'() ()> >::_M_run() (/root/emsdk/upstream/bin/../lib/libLLVM-10svn.so+0x65f6f7) #15 0x00007f2827ddbad3 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count() /root/gcc-6.1.0/build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/shared_ptr_base.h:661:0 #16 0x00007f2827ddbad3 std::__shared_ptr<std::thread::_Impl_base, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr() /root/gcc-6.1.0/build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/shared_ptr_base.h:928:0 #17 0x00007f2827ddbad3 std::shared_ptr<std::thread::_Impl_base>::~shared_ptr() /root/gcc-6.1.0/build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/shared_ptr.h:93:0 #18 0x00007f2827ddbad3 execute_native_thread_routine_compat /root/gcc-6.1.0/build/x86_64-pc-linux-gnu/libstdc++-v3/src/c++11/../../../../../libstdc++-v3/src/c++11/thread.cc:102:0 #19 0x00007f282b590dd5 start_thread (/lib64/libpthread.so.0+0x7dd5) #20 0x00007f282753c02d clone (/lib64/libc.so.6+0xfe02d) My Question is: Is the gcc code in my backstrace rational? Is that llvm bug? -- You received this message because you are subscribed to the Google Groups "emscripten-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to emscripten-discuss+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/emscripten-discuss/043ea7bb-19ab-41f9-87b2-dab358195515%40googlegroups.com.