| Issue |
203627
|
| Summary |
Clang crash with exit code 139
|
| Labels |
clang
|
| Assignees |
|
| Reporter |
geoffromer
|
I've run into a crash bug in clang. Here's the [preprocessed source](https://github.com/user-attachments/files/28897358/action-d4e7c5.cpp) and the [run script](https://github.com/user-attachments/files/28897357/action-d4e7c5.sh). The crash backtrace is as follows:
```
PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace, preprocessed source, and associated run script.
Stack dump:
0. Program arguments: /usr/local/google/home/gromer/llvm-project/build/bin/clang++ -no-canonical-prefixes -fcolor-diagnostics -c -MD -MF bazel-out/k8-dbg/bin/toolchain/check/_objs/context/action.pic.d -frandom-seed=bazel-out/k8-dbg/bin/toolchain/check/_objs/context/action.pic.o -std=c++20 -ffunction-sections -fdata-sections -fPIC -Wno-builtin-macro-redefined -D__DATE__=\"redacted\" -D__TIMESTAMP__=\"redacted\" -D__TIME__=\"redacted\" -DLLVM_ON_UNIX=1 -DHAVE_BACKTRACE=1 -DBACKTRACE_HEADER=<execinfo.h> -DLTDL_SHLIB_EXT=\".so\" -DLLVM_PLUGIN_EXT=\".so\" -DLLVM_ENABLE_LLVM_EXPORT_ANNOTATIONS=1 -DLLVM_ENABLE_PLUGINS=1 -DLLVM_ENABLE_THREADS=1 -DHAVE_DEREGISTER_FRAME=1 -DHAVE_LIBPTHREAD=1 -DHAVE_PTHREAD_GETNAME_NP=1 -DHAVE_PTHREAD_H=1 -DHAVE_PTHREAD_SETNAME_NP=1 -DHAVE_REGISTER_FRAME=1 -DHAVE_SETENV_R=1 -DHAVE_STRERROR_R=1 -DHAVE_SYSEXITS_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_UNISTD_H=1 -D_GNU_SOURCE -DHAVE_GETAUXVAL=1 -DHAVE_MALLINFO=1 -DHAVE_SBRK=1 -DHAVE_STRUCT_STAT_ST_MTIM_TV_NSEC=1 -DHAVE_BUILTIN_THREAD_POINTER -DLLVM_NATIVE_ARCH=\"X86\" -DLLVM_NATIVE_ASMPARSER=LLVMInitializeX86AsmParser -DLLVM_NATIVE_ASMPRINTER=LLVMInitializeX86AsmPrinter -DLLVM_NATIVE_DISASSEMBLER=LLVMInitializeX86Disassembler -DLLVM_NATIVE_TARGET=LLVMInitializeX86Target -DLLVM_NATIVE_TARGETINFO=LLVMInitializeX86TargetInfo -DLLVM_NATIVE_TARGETMC=LLVMInitializeX86TargetMC -DLLVM_NATIVE_TARGETMCA=LLVMInitializeX86TargetMCA -DLLVM_HOST_TRIPLE=\"x86_64-unknown-linux-gnu\" -DLLVM_DEFAULT_TARGET_TRIPLE=\"x86_64-unknown-linux-gnu\" -DLLVM_VERSION_MAJOR=23 -DLLVM_VERSION_MINOR=0 -DLLVM_VERSION_PATCH=0 -DLLVM_VERSION_STRING=\"23.0.0git\" -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DLLVM_HAS_AArch64_TARGET=1 -DLLVM_HAS_X86_TARGET=1 -DLLVM_ENABLE_ZLIB=1 -DLLVM_ENABLE_ZSTD=1 -DZSTD_MULTITHREAD -DBLAKE3_USE_NEON=0 -iquote . -iquote bazel-out/k8-dbg/bin -iquote external/+llvm_project+llvm-project -iquote bazel-out/k8-dbg/bin/external/+llvm_project+llvm-project -iquote external/zlib-ng+ -iquote bazel-out/k8-dbg/bin/external/zlib-ng+ -iquote external/zstd+ -iquote bazel-out/k8-dbg/bin/external/zstd+ -Ibazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/third-party/siphash/_virtual_includes/siphash -Ibazel-out/k8-dbg/bin/external/zlib-ng+/_virtual_includes/zlib-ng -Ibazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/clang/_virtual_includes/ast_attr_doc_table_gen -Ibazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/clang/_virtual_includes/ast_bytecode_opcodes_gen -Ibazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/clang/_virtual_includes/libsema_openclbuiltins_inc_gen -Ibazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/llvm/_virtual_includes/AArch64CodeGen -Ibazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/llvm/_virtual_includes/AArch64CommonTableGen -Ibazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/llvm/_virtual_includes/AArch64Info -Ibazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/llvm/_virtual_includes/AArch64UtilsAndDesc -Ibazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/llvm/_virtual_includes/X86CodeGen -Ibazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/llvm/_virtual_includes/X86CommonTableGen -Ibazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/llvm/_virtual_includes/X86Info -Ibazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/llvm/_virtual_includes/X86UtilsAndDesc -isystem external/+llvm_project+llvm-project/llvm/include -isystem bazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/llvm/include -isystem external/zlib-ng+ -isystem bazel-out/k8-dbg/bin/external/zlib-ng+ -isystem external/zstd+/lib -isystem bazel-out/k8-dbg/bin/external/zstd+/lib -isystem external/+llvm_project+llvm-project/libc -isystem bazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/libc -isystem external/+llvm_project+llvm-project/clang/include -isystem bazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/clang/include -isystem external/+llvm_project+llvm-project/clang/lib/CodeGen -isystem bazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/clang/lib/CodeGen -isystem external/+llvm_project+llvm-project/clang/lib/Analysis/FlowSensitive -isystem bazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/clang/lib/Analysis/FlowSensitive -isystem external/+llvm_project+llvm-project/clang/lib/Driver -isystem bazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/clang/lib/Driver -isystem external/+llvm_project+llvm-project/llvm/lib/Target/AArch64 -isystem bazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/llvm/lib/Target/AArch64 -isystem external/+llvm_project+llvm-project/llvm/lib/Target/X86 -isystem bazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/llvm/lib/Target/X86 -isystem external/+llvm_project+llvm-project/clang/lib/ScalableStaticAnalysisFramework/Analyses -isystem bazel-out/k8-dbg/bin/external/+llvm_project+llvm-project/clang/lib/ScalableStaticAnalysisFramework/Analyses -Werror -Wall -Wextra -Wthread-safety -Wself-assign -Wimplicit-fallthrough -Wctad-maybe-unsupported -Wextra-semi -Wmissing-prototypes -Wzero-as-null-pointer-constant -Wdelete-non-virtual-dtor -Wno-missing-designated-field-initializers -stdlib=libc++ -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE -march=x86-64-v2 -g -gz -glldb -gpubnames -gsimple-template-names --system-header-prefix=absl/ --system-header-prefix=benchmark/ --system-header-prefix=boost/ --system-header-prefix=clang-tools-extra/ --system-header-prefix=clang/ --system-header-prefix=gmock/ --system-header-prefix=gtest/ --system-header-prefix=libfuzzer/ --system-header-prefix=llvm/ --system-header-prefix=re2/ --system-header-prefix=tools/cpp/ --system-header-prefix=tree_sitter/ "-DBAZEL_COMPILE_CACHE_KEY=\"21.1.4 (https://github.com/llvm/llvm-project.git 222fc11f2b8f25f6a0f4976272ef1bb7bf49521d)\"" -fdebug-prefix-map=/proc/self/cwd= toolchain/check/action.cpp -o bazel-out/k8-dbg/bin/toolchain/check/_objs/context/action.pic.o
1. <eof> parser at end of file
2. toolchain/check/action.cpp:17:11: LLVM IR generation of declaration 'Carbon'
3. toolchain/check/action.cpp:19:6: Generating code for declaration 'Carbon::Check::PerformAction'
#0 0x00005641d1d1a7cb llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x3e407cb)
#1 0x00005641d1d18374 llvm::sys::CleanupOnSignal(unsigned long) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x3e3e374)
#2 0x00005641d1c5c380 CrashRecoverySignalHandler(int) CrashRecoveryContext.cpp:0:0
#3 0x00007fb2bcc40e30 (/usr/lib/x86_64-linux-gnu/libc.so.6+0x40e30)
#4 0x00005641d20158fc clang::CodeGen::CGDebugInfo::getOrCreateType(clang::QualType, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413b8fc)
#5 0x00005641d201dbc4 clang::CodeGen::CGDebugInfo::CreateRecordStaticField(clang::VarDecl const*, llvm::DIType*, clang::RecordDecl const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4143bc4)
#6 0x00005641d201fcf4 clang::CodeGen::CGDebugInfo::CollectRecordFields(clang::RecordDecl const*, llvm::DIFile*, llvm::SmallVectorImpl<llvm::Metadata*>&, llvm::DICompositeType*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4145cf4)
#7 0x00005641d2013d4a clang::CodeGen::CGDebugInfo::CreateTypeDefinition(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4139d4a)
#8 0x00005641d20152db clang::CodeGen::CGDebugInfo::CreateType(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413b2db)
#9 0x00005641d2015c40 clang::CodeGen::CGDebugInfo::getOrCreateType(clang::QualType, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413bc40)
#10 0x00005641d2019449 clang::CodeGen::CGDebugInfo::CollectTemplateParams(std::optional<clang::CodeGen::CGDebugInfo::TemplateArgs>, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413f449)
#11 0x00005641d2023c89 clang::CodeGen::CGDebugInfo::CreateLimitedType(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4149c89)
#12 0x00005641d202485b clang::CodeGen::CGDebugInfo::getOrCreateLimitedType(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x414a85b)
#13 0x00005641d2013bfb clang::CodeGen::CGDebugInfo::CreateTypeDefinition(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4139bfb)
#14 0x00005641d20152db clang::CodeGen::CGDebugInfo::CreateType(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413b2db)
#15 0x00005641d2015c40 clang::CodeGen::CGDebugInfo::getOrCreateType(clang::QualType, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413bc40)
#16 0x00005641d2015489 clang::CodeGen::CGDebugInfo::CreateTypeNode(clang::QualType, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413b489)
#17 0x00005641d2015c40 clang::CodeGen::CGDebugInfo::getOrCreateType(clang::QualType, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413bc40)
#18 0x00005641d2018080 clang::CodeGen::CGDebugInfo::CreateType(clang::ArrayType const*, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413e080)
#19 0x00005641d2015c40 clang::CodeGen::CGDebugInfo::getOrCreateType(clang::QualType, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413bc40)
#20 0x00005641d201dbc4 clang::CodeGen::CGDebugInfo::CreateRecordStaticField(clang::VarDecl const*, llvm::DIType*, clang::RecordDecl const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4143bc4)
#21 0x00005641d201fcf4 clang::CodeGen::CGDebugInfo::CollectRecordFields(clang::RecordDecl const*, llvm::DIFile*, llvm::SmallVectorImpl<llvm::Metadata*>&, llvm::DICompositeType*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4145cf4)
#22 0x00005641d2013d4a clang::CodeGen::CGDebugInfo::CreateTypeDefinition(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4139d4a)
#23 0x00005641d20152db clang::CodeGen::CGDebugInfo::CreateType(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413b2db)
#24 0x00005641d2015c40 clang::CodeGen::CGDebugInfo::getOrCreateType(clang::QualType, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413bc40)
#25 0x00005641d2019449 clang::CodeGen::CGDebugInfo::CollectTemplateParams(std::optional<clang::CodeGen::CGDebugInfo::TemplateArgs>, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413f449)
#26 0x00005641d2023c89 clang::CodeGen::CGDebugInfo::CreateLimitedType(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4149c89)
#27 0x00005641d202485b clang::CodeGen::CGDebugInfo::getOrCreateLimitedType(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x414a85b)
#28 0x00005641d2013bfb clang::CodeGen::CGDebugInfo::CreateTypeDefinition(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4139bfb)
#29 0x00005641d20152db clang::CodeGen::CGDebugInfo::CreateType(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413b2db)
#30 0x00005641d2015c40 clang::CodeGen::CGDebugInfo::getOrCreateType(clang::QualType, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413bc40)
#31 0x00005641d201e66a clang::CodeGen::CGDebugInfo::createFieldType(llvm::StringRef, clang::QualType, clang::SourceLocation, clang::AccessSpecifier, unsigned long, unsigned int, llvm::DIFile*, llvm::DIScope*, clang::RecordDecl const*, llvm::MDTupleTypedArrayWrapper<llvm::DINode>) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x414466a)
#32 0x00005641d201f8aa clang::CodeGen::CGDebugInfo::CollectRecordNormalField(clang::FieldDecl const*, unsigned long, llvm::DIFile*, llvm::SmallVectorImpl<llvm::Metadata*>&, llvm::DIType*, clang::RecordDecl const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x41458aa)
#33 0x00005641d201fc19 clang::CodeGen::CGDebugInfo::CollectRecordFields(clang::RecordDecl const*, llvm::DIFile*, llvm::SmallVectorImpl<llvm::Metadata*>&, llvm::DICompositeType*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4145c19)
#34 0x00005641d2013d4a clang::CodeGen::CGDebugInfo::CreateTypeDefinition(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4139d4a)
#35 0x00005641d20152db clang::CodeGen::CGDebugInfo::CreateType(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413b2db)
#36 0x00005641d2015c40 clang::CodeGen::CGDebugInfo::getOrCreateType(clang::QualType, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413bc40)
#37 0x00005641d201e66a clang::CodeGen::CGDebugInfo::createFieldType(llvm::StringRef, clang::QualType, clang::SourceLocation, clang::AccessSpecifier, unsigned long, unsigned int, llvm::DIFile*, llvm::DIScope*, clang::RecordDecl const*, llvm::MDTupleTypedArrayWrapper<llvm::DINode>) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x414466a)
#38 0x00005641d201f8aa clang::CodeGen::CGDebugInfo::CollectRecordNormalField(clang::FieldDecl const*, unsigned long, llvm::DIFile*, llvm::SmallVectorImpl<llvm::Metadata*>&, llvm::DIType*, clang::RecordDecl const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x41458aa)
#39 0x00005641d201fc19 clang::CodeGen::CGDebugInfo::CollectRecordFields(clang::RecordDecl const*, llvm::DIFile*, llvm::SmallVectorImpl<llvm::Metadata*>&, llvm::DICompositeType*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4145c19)
#40 0x00005641d2013d4a clang::CodeGen::CGDebugInfo::CreateTypeDefinition(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x4139d4a)
#41 0x00005641d20152db clang::CodeGen::CGDebugInfo::CreateType(clang::RecordType const*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413b2db)
#42 0x00005641d2015c40 clang::CodeGen::CGDebugInfo::getOrCreateType(clang::QualType, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0x413bc40)
#43 0x00005641d201ffa9 clang::CodeGen::CGDebugInfo::CreatePointerLikeType(llvm::dwarf::Tag, clang::Type const*, clang::QualType, llvm::DIFile*) (/usr/local/google/home/gromer/llvm-project/build/bin/clang+++0<truncated>Please see the issue for the entire body.
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs