Skip to content

Assertion `!empty() && "popping exception stack when not empty"' failed #44596

@berolinux

Description

@berolinux
Bugzilla Link 45251
Resolution DUPLICATE
Resolved on Mar 19, 2020 10:55
Version 10.0
OS Linux
Blocks #43900
Attachments Reduced test case
CC @zmodem,@rnk

Extended Description

$ clang++ -O test.cpp
clang-10: /builddir/build/BUILD/llvm-project-release-10.x/clang/lib/CodeGen/CGCleanup.h:583: void clang::CodeGen::EHScopeStack::popTerminate(): Assertion `!empty() && "popping exception stack when not empty"' failed.
Stack dump:
0. Program arguments: /usr/bin/clang-10 -cc1 -triple x86_64-pc-linux-gnu -emit-obj -disable-free -main-file-name test.cpp -mrelocation-model static -mthread-model posix -mframe-pointer=none -fmath-errno -fno-rounding-math -masm-verbose -mconstructor-aliases -munwind-tables -target-cpu x86-64 -dwarf-column-info -fno-split-dwarf-inlining -debugger-tuning=gdb -resource-dir /usr/lib64/clang/10.0.0 -internal-isystem /usr/bin/../lib64/gcc/x86_64-openmandriva-linux-gnu/10.0.0/../../../../include/c++/10.0.0 -internal-isystem /usr/bin/../lib64/gcc/x86_64-openmandriva-linux-gnu/10.0.0/../../../../include/c++/10.0.0/x86_64-openmandriva-linux-gnu -internal-isystem /usr/bin/../lib64/gcc/x86_64-openmandriva-linux-gnu/10.0.0/../../../../include/c++/10.0.0/backward -internal-isystem /usr/local/include -internal-isystem /usr/lib64/clang/10.0.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -O2 -fdeprecated-macro -fdebug-compilation-dir /home/bero -ferror-limit 19 -fmessage-length 0 -fgnuc-version=4.2.1 -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -fcolor-diagnostics -vectorize-loops -vectorize-slp -faddrsig -o /tmp/test-1330e7.o -x c++ test.cpp

  1.  <eof> parser at end of file
    

#​0 0x00007f430bc11932 (/usr/lib64/libLLVMSupport.so.10.0+0x214932)
#​1 0x00007f430bc0eee0 llvm::sys::RunSignalHandlers() (/usr/lib64/libLLVMSupport.so.10.0+0x211ee0)
#​2 0x00007f430bc11b48 (/usr/lib64/libLLVMSupport.so.10.0+0x214b48)
#​3 0x00007f430b668d30 __restore_rt (/lib64/libc.so.6+0x44d30)
#​4 0x00007f430b668caf raise (/lib64/libc.so.6+0x44caf)
#​5 0x00007f430b64953d abort (/lib64/libc.so.6+0x2553d)
#​6 0x00007f430b649411 _nl_load_domain.cold (/lib64/libc.so.6+0x25411)
#​7 0x00007f430b659c22 (/lib64/libc.so.6+0x35c22)
#​8 0x00007f430ec13c5e clang::CodeGen::CodeGenFunction::EmitEndEHSpec(clang::Decl const*) (/usr/lib64/libclangCodeGen.so.10.0+0x3a8c5e)
#​9 0x00007f430edf9d53 clang::CodeGen::CodeGenFunction::FinishFunction(clang::SourceLocation) (/usr/lib64/libclangCodeGen.so.10.0+0x58ed53)
#​10 0x00007f430ede631d clang::CodeGen::CodeGenFunction::EmitMustTailThunk(clang::GlobalDecl, llvm::Value*, llvm::FunctionCallee) (/usr/lib64/libclangCodeGen.so.10.0+0x57b31d)
#​11 0x00007f430ede55af clang::CodeGen::CodeGenFunction::EmitCallAndReturnForThunk(llvm::FunctionCallee, clang::ThunkInfo const*, bool) (/usr/lib64/libclangCodeGen.so.10.0+0x57a5af)
#​12 0x00007f430ede6630 clang::CodeGen::CodeGenFunction::generateThunk(llvm::Function*, clang::CodeGen::CGFunctionInfo const&, clang::GlobalDecl, clang::ThunkInfo const&, bool) (/usr/lib64/libclangCodeGen.so.10.0+0x57b630)
#​13 0x00007f430ede6c4c clang::CodeGen::CodeGenVTables::maybeEmitThunk(clang::GlobalDecl, clang::ThunkInfo const&, bool) (/usr/lib64/libclangCodeGen.so.10.0+0x57bc4c)
#​14 0x00007f430ede7360 clang::CodeGen::CodeGenVTables::addVTableComponent(clang::CodeGen::ConstantArrayBuilder&, clang::VTableLayout const&, unsigned int, llvm::Constant*, unsigned int&) (/usr/lib64/libclangCodeGen.so.10.0+0x57c360)
#​15 0x00007f430ede7adb clang::CodeGen::CodeGenVTables::createVTableInitializer(clang::CodeGen::ConstantStructBuilder&, clang::VTableLayout const&, llvm::Constant*) (/usr/lib64/libclangCodeGen.so.10.0+0x57cadb)
#​16 0x00007f430ee8c478 (/usr/lib64/libclangCodeGen.so.10.0+0x621478)
#​17 0x00007f4309210627 clang::Sema::DefineUsedVTables() (/usr/lib64/libclangSema.so.10.0+0x5fc627)
#​18 0x00007f4308f64829 clang::Sema::ActOnEndOfTranslationUnitFragment(clang::Sema::TUFragmentKind) (/usr/lib64/libclangSema.so.10.0+0x350829)
#​19 0x00007f4308f64e40 clang::Sema::ActOnEndOfTranslationUnit() (/usr/lib64/libclangSema.so.10.0+0x350e40)
#​20 0x00007f43098ca57c clang::Parser::ParseTopLevelDecl(clang::OpaquePtrclang::DeclGroupRef&, bool) (/usr/lib64/libclangParse.so.10.0+0x13a57c)
#​21 0x00007f43097fbfbd clang::ParseAST(clang::Sema&, bool, bool) (/usr/lib64/libclangParse.so.10.0+0x6bfbd)
#​22 0x00007f430edf0fa5 clang::CodeGenAction::ExecuteAction() (/usr/lib64/libclangCodeGen.so.10.0+0x585fa5)
#​23 0x00007f430d41c8ad clang::FrontendAction::Execute() (/usr/lib64/libclangFrontend.so.10.0+0x1718ad)
#​24 0x00007f430d3a40aa clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/usr/lib64/libclangFrontend.so.10.0+0xf90aa)
#​25 0x00007f430f81f950 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/usr/lib64/libclangFrontendTool.so.10.0+0x5950)
#​26 0x0000000000217ebe cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/usr/bin/clang-10+0x217ebe)
#​27 0x0000000000215ff6 (/usr/bin/clang-10+0x215ff6)
#​28 0x000000000021557c main (/usr/bin/clang-10+0x21557c)
#​29 0x00007f430b64addb __libc_start_main (/lib64/libc.so.6+0x26ddb)
#​30 0x0000000000211aca _start (/usr/bin/clang-10+0x211aca)
clang-10: error: unable to execute command: Aborted (core dumped)
clang-10: error: clang frontend command failed due to signal (use -v to see invocation)
clang version 10.0.0
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
clang-10: note: diagnostic msg: PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace, preprocessed source, and associated run script.
clang-10: note: diagnostic msg:


PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang-10: note: diagnostic msg: /tmp/test-bf8877.cpp
clang-10: note: diagnostic msg: /tmp/test-bf8877.sh
clang-10: note: diagnostic msg:


Attaching reduced test case.

Happens in the real world while building libtorrent-rasterbar 1.2.5.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugzillaIssues migrated from bugzilladuplicateResolved as duplicate

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions