Skip to content

clang++ 20.1.8 crash while building QtMultimedia 5.15.18 #169391

@JasonGantner

Description

@JasonGantner

While building QtMultimedia 5.15.18, clang++ crashed and asked to open an issue here.

Here is the full error message :

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/lib/llvm/20/bin/clang++-20 -c -O3 -pipe -pthread -target x86_64-pc-linux-gnu -march=broadwell -malign-double -mbranches-within-32B-boundaries -fPIC -Wunused-command-line-argument -fsplit-lto-unit -Werror=odr -Werror=strict-aliasing -fvectorize -fslp-vectorize -fstrict-enums -fstrict-vtable-pointers -std=c++1z -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -Wall -Wextra -Wdate-time -Winconsistent-missing-override -D_REENTRANT -fPIC -DQT_NO_LINKED_LIST -DQT_NO_FOREACH -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_LINKED_LIST -DQT_DISABLE_DEPRECATED_BEFORE=0 -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_PLUGIN -DQT_QTMULTIMEDIAQUICKTOOLS_LIB -DQT_MULTIMEDIA_LIB -DQT_QUICK_LIB -DQT_GUI_LIB -DQT_QMLMODELS_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -D_REENTRANT -I/var/tmp/portage/dev-qt/qtmultimedia-5.15.18/work/qtmultimedia-everywhere-src-5.15.18/src/imports/multimedia -I. -I/var/tmp/portage/dev-qt/qtmultimedia-5.15.18/work/qtmultimedia-everywhere-src-5.15.18/include -I/var/tmp/portage/dev-qt/qtmultimedia-5.15.18/work/qtmultimedia-everywhere-src-5.15.18/include/QtMultimediaQuick -I/var/tmp/portage/dev-qt/qtmultimedia-5.15.18/work/qtmultimedia-everywhere-src-5.15.18/include/QtMultimediaQuick/5.15.18 -I/var/tmp/portage/dev-qt/qtmultimedia-5.15.18/work/qtmultimedia-everywhere-src-5.15.18/include/QtMultimediaQuick/5.15.18/QtMultimediaQuick -I../../../include -I../../../include/QtMultimediaQuick -I/var/tmp/portage/dev-qt/qtmultimedia-5.15.18/work/qtmultimedia-everywhere-src-5.15.18/include/QtMultimedia/5.15.18 -I/var/tmp/portage/dev-qt/qtmultimedia-5.15.18/work/qtmultimedia-everywhere-src-5.15.18/include/QtMultimedia/5.15.18/QtMultimedia -I../../../include/QtMultimedia/5.15.18 -I../../../include/QtMultimedia/5.15.18/QtMultimedia -I/var/tmp/portage/dev-qt/qtmultimedia-5.15.18/work/qtmultimedia-everywhere-src-5.15.18/include/QtMultimedia -I../../../include/QtMultimedia -I/usr/include/qt5 -I/usr/include/qt5/QtQuick -I/usr/include/qt5/QtGui/5.15.18 -I/usr/include/qt5/QtGui/5.15.18/QtGui -I/usr/include/qt5/QtGui -I/usr/include/qt5/QtQmlModels -I/usr/include/qt5/QtQml -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtCore/5.15.18 -I/usr/include/qt5/QtCore/5.15.18/QtCore -I/usr/include/qt5/QtCore -I.moc -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/lib64/qt5/mkspecs/linux-clang -o .obj/qdeclarativecamerapreviewprovider.o /var/tmp/portage/dev-qt/qtmultimedia-5.15.18/work/qtmultimedia-everywhere-src-5.15.18/src/imports/multimedia/qdeclarativecamerapreviewprovider.cpp
1.      <eof> parser at end of file
2.      Optimizer
3.      Running pass "require<globals-aa>,function(invalidate<aa>),require<profile-summary>,cgscc(devirt<4>(inline,function-attrs<skip-non-recursive-function-attrs>,argpromotion,openmp-opt-cgscc,function<eager-inv;no-rerun>(sroa<modify-cfg>,early-cse<memssa>,speculative-execution<only-if-divergent-target>,jump-threading,correlated-propagation,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-verify-fixpoint>,aggressive-instcombine,libcalls-shrinkwrap,tailcallelim,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,reassociate,constraint-elimination,loop-mssa(loop-instsimplify,loop-simplifycfg,licm<no-allowspeculation>,loop-rotate<header-duplication;no-prepare-for-lto>,licm<allowspeculation>,simple-loop-unswitch<nontrivial;trivial>),simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-verify-fixpoint>,loop(loop-idiom,indvars,extra-simple-loop-unswitch-passes,loop-deletion,loop-unroll-full),sroa<modify-cfg>,vector-combine,mldst-motion<no-split-footer-bb>,gvn<>,sccp,bdce,instcombine<max-iterations=1;no-verify-fixpoint>,jump-threading,correlated-propagation,adce,memcpyopt,dse,move-auto-init,loop-mssa(licm<allowspeculation>),coro-elide,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-verify-fixpoint>),function-attrs,function(require<should-not-run-function-passes>),coro-split,coro-annotation-elide)),function(invalidate<should-not-run-function-passes>),cgscc(devirt<4>())" on module "/var/tmp/portage/dev-qt/qtmultimedia-5.15.18/work/qtmultimedia-everywhere-src-5.15.18/src/imports/multimedia/qdeclarativecamerapreviewprovider.cpp"
4.      Running pass "cgscc(devirt<4>(inline,function-attrs<skip-non-recursive-function-attrs>,argpromotion,openmp-opt-cgscc,function<eager-inv;no-rerun>(sroa<modify-cfg>,early-cse<memssa>,speculative-execution<only-if-divergent-target>,jump-threading,correlated-propagation,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-verify-fixpoint>,aggressive-instcombine,libcalls-shrinkwrap,tailcallelim,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,reassociate,constraint-elimination,loop-mssa(loop-instsimplify,loop-simplifycfg,licm<no-allowspeculation>,loop-rotate<header-duplication;no-prepare-for-lto>,licm<allowspeculation>,simple-loop-unswitch<nontrivial;trivial>),simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;no-hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;no-sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-verify-fixpoint>,loop(loop-idiom,indvars,extra-simple-loop-unswitch-passes,loop-deletion,loop-unroll-full),sroa<modify-cfg>,vector-combine,mldst-motion<no-split-footer-bb>,gvn<>,sccp,bdce,instcombine<max-iterations=1;no-verify-fixpoint>,jump-threading,correlated-propagation,adce,memcpyopt,dse,move-auto-init,loop-mssa(licm<allowspeculation>),coro-elide,simplifycfg<bonus-inst-threshold=1;no-forward-switch-cond;switch-range-to-icmp;no-switch-to-lookup;keep-loops;hoist-common-insts;no-hoist-loads-stores-with-cond-faulting;sink-common-insts;speculate-blocks;simplify-cond-branch;no-speculate-unpredictables>,instcombine<max-iterations=1;no-verify-fixpoint>),function-attrs,function(require<should-not-run-function-passes>),coro-split,coro-annotation-elide))" on module "/var/tmp/portage/dev-qt/qtmultimedia-5.15.18/work/qtmultimedia-everywhere-src-5.15.18/src/imports/multimedia/qdeclarativecamerapreviewprovider.cpp"
5.      Running pass "correlated-propagation" on function "_ZN33QDeclarativeCameraPreviewProvider15registerPreviewERK7QStringRK6QImage"
 #0 0x00007f67eafb76d6 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x1fb76d6)
 #1 0x00007f67eafb45b4 llvm::sys::RunSignalHandlers() (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x1fb45b4)
 #2 0x00007f67eaebdae0 (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x1ebdae0)
 #3 0x00007f67e8a53b60 (/usr/lib64/libc.so.6+0x3cb60)
 #4 0x00007f67eb126b0e llvm::Argument::getRange() const (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x2126b0e)
 #5 0x00007f67ece87fdd llvm::LazyValueInfoImpl::solveBlockValueNonLocal(llvm::Value*, llvm::BasicBlock*) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x3e87fdd)
 #6 0x00007f67ece87d53 llvm::LazyValueInfoImpl::solveBlockValueImpl(llvm::Value*, llvm::BasicBlock*) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x3e87d53)
 #7 0x00007f67ece87093 llvm::LazyValueInfoImpl::solveBlockValue(llvm::Value*, llvm::BasicBlock*) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x3e87093)
 #8 0x00007f67ece8681f llvm::LazyValueInfoImpl::solve() (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x3e8681f)
 #9 0x00007f67ece90663 llvm::LazyValueInfoImpl::getValueInBlock(llvm::Value*, llvm::BasicBlock*, llvm::Instruction*) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x3e90663)
#10 0x00007f67ece939a5 llvm::LazyValueInfo::getPredicateAt(llvm::CmpInst::Predicate, llvm::Value*, llvm::Constant*, llvm::Instruction*, bool) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x3e939a5)
#11 0x00007f67ec520023 (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x3520023)
#12 0x00007f67ec51f7d0 llvm::CorrelatedValuePropagationPass::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x351f7d0)
#13 0x00007f67ee7bb6bd (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x57bb6bd)
#14 0x00007f67eb1ca8ae llvm::PassManager<llvm::Function, llvm::AnalysisManager<llvm::Function>>::run(llvm::Function&, llvm::AnalysisManager<llvm::Function>&) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x21ca8ae)
#15 0x00007f67ee0b7fbd (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x50b7fbd)
#16 0x00007f67ecd75346 llvm::CGSCCToFunctionPassAdaptor::run(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x3d75346)
#17 0x00007f67ee7ced8d (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x57ced8d)
#18 0x00007f67ecd70f8c llvm::PassManager<llvm::LazyCallGraph::SCC, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&>::run(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x3d70f8c)
#19 0x00007f67ec914ebd (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x3914ebd)
#20 0x00007f67ecd739b4 llvm::DevirtSCCRepeatedPass::run(llvm::LazyCallGraph::SCC&, llvm::AnalysisManager<llvm::LazyCallGraph::SCC, llvm::LazyCallGraph&>&, llvm::LazyCallGraph&, llvm::CGSCCUpdateResult&) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x3d739b4)
#21 0x00007f67ec91564d (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x391564d)
#22 0x00007f67ecd72ab5 llvm::ModuleToPostOrderCGSCCPassAdaptor::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x3d72ab5)
#23 0x00007f67ec91528d (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x391528d)
#24 0x00007f67eb1c91e9 llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x21c91e9)
#25 0x00007f67ec912b4e llvm::ModuleInlinerWrapperPass::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x3912b4e)
#26 0x00007f67ee7ae7bd (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x57ae7bd)
#27 0x00007f67eb1c91e9 llvm::PassManager<llvm::Module, llvm::AnalysisManager<llvm::Module>>::run(llvm::Module&, llvm::AnalysisManager<llvm::Module>&) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x21c91e9)
#28 0x00007f67f13b50e5 (/usr/lib/llvm/20/bin/../lib64/libclang-cpp.so.20.1+0x27b50e5)
#29 0x00007f67f13abee2 clang::emitBackendOutput(clang::CompilerInstance&, clang::CodeGenOptions&, llvm::StringRef, llvm::Module*, clang::BackendAction, llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem>, std::unique_ptr<llvm::raw_pwrite_stream, std::default_delete<llvm::raw_pwrite_stream>>, clang::BackendConsumer*) (/usr/lib/llvm/20/bin/../lib64/libclang-cpp.so.20.1+0x27abee2)
#30 0x00007f67f18633c8 clang::BackendConsumer::HandleTranslationUnit(clang::ASTContext&) (/usr/lib/llvm/20/bin/../lib64/libclang-cpp.so.20.1+0x2c633c8)
#31 0x00007f67efcf056e clang::ParseAST(clang::Sema&, bool, bool) (/usr/lib/llvm/20/bin/../lib64/libclang-cpp.so.20.1+0x10f056e)
#32 0x00007f67f231ba4b clang::FrontendAction::Execute() (/usr/lib/llvm/20/bin/../lib64/libclang-cpp.so.20.1+0x371ba4b)
#33 0x00007f67f227393c clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/usr/lib/llvm/20/bin/../lib64/libclang-cpp.so.20.1+0x367393c)
#34 0x00007f67f23a0488 clang::ExecuteCompilerInvocation(clang::CompilerInstance*) (/usr/lib/llvm/20/bin/../lib64/libclang-cpp.so.20.1+0x37a0488)
#35 0x000055cef1dda15e cc1_main(llvm::ArrayRef<char const*>, char const*, void*) (/usr/lib/llvm/20/bin/clang++-20+0x1315e)
#36 0x000055cef1dd65da (/usr/lib/llvm/20/bin/clang++-20+0xf5da)
#37 0x00007f67f1e1b1f9 (/usr/lib/llvm/20/bin/../lib64/libclang-cpp.so.20.1+0x321b1f9)
#38 0x00007f67eaebd7c8 llvm::CrashRecoveryContext::RunSafely(llvm::function_ref<void ()>) (/usr/lib/llvm/20/bin/../lib64/libLLVM.so.20.1+0x1ebd7c8)
#39 0x00007f67f1e1ad5b clang::driver::CC1Command::Execute(llvm::ArrayRef<std::optional<llvm::StringRef>>, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>*, bool*) const (/usr/lib/llvm/20/bin/../lib64/libclang-cpp.so.20.1+0x321ad5b)
#40 0x00007f67f1dd4fd3 clang::driver::Compilation::ExecuteCommand(clang::driver::Command const&, clang::driver::Command const*&, bool) const (/usr/lib/llvm/20/bin/../lib64/libclang-cpp.so.20.1+0x31d4fd3)
#41 0x00007f67f1dd526e clang::driver::Compilation::ExecuteJobs(clang::driver::JobList const&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&, bool) const (/usr/lib/llvm/20/bin/../lib64/libclang-cpp.so.20.1+0x31d526e)
#42 0x00007f67f1df8daf clang::driver::Driver::ExecuteCompilation(clang::driver::Compilation&, llvm::SmallVectorImpl<std::pair<int, clang::driver::Command const*>>&) (/usr/lib/llvm/20/bin/../lib64/libclang-cpp.so.20.1+0x31f8daf)
#43 0x000055cef1dd5a8d clang_main(int, char**, llvm::ToolContext const&) (/usr/lib/llvm/20/bin/clang++-20+0xea8d)
#44 0x000055cef1de6684 main (/usr/lib/llvm/20/bin/clang++-20+0x1f684)
#45 0x00007f67e8a3dfaa (/usr/lib64/libc.so.6+0x26faa)
#46 0x00007f67e8a3e065 __libc_start_main (/usr/lib64/libc.so.6+0x27065)
#47 0x000055cef1dd3c21 _start (/usr/lib/llvm/20/bin/clang++-20+0xcc21)
clang++-20: error: clang frontend command failed with exit code 139 (use -v to see invocation)
clang version 20.1.8
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm/20/bin
Configuration file: /etc/clang/20/x86_64-pc-linux-gnu-clang++.cfg
clang++-20: note: diagnostic msg:
********************

PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang++-20: note: diagnostic msg: /var/tmp/portage/dev-qt/qtmultimedia-5.15.18/temp/qdeclarativecamerapreviewprovider-ce8862.cpp
clang++-20: note: diagnostic msg: /var/tmp/portage/dev-qt/qtmultimedia-5.15.18/temp/qdeclarativecamerapreviewprovider-ce8862.sh
clang++-20: note: diagnostic msg:

Additionnal files

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions