Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

crashes on PlacementNewChecker::CheckPlacementNew #45611

Open
hokein opened this issue Jun 10, 2020 · 2 comments
Open

crashes on PlacementNewChecker::CheckPlacementNew #45611

hokein opened this issue Jun 10, 2020 · 2 comments
Assignees
Labels
bugzilla Issues migrated from bugzilla clang:static analyzer

Comments

@hokein
Copy link
Collaborator

hokein commented Jun 10, 2020

Bugzilla Link 46266
Version trunk
OS All
CC @devincoughlin,@haoNoQ

Extended Description

// ./bin/clang-tidy -checks="-,clang-analyzer" /tmp/crash.cpp
void *operator new(unsigned long, void *);
class a extern b;
void c() {
void *d = &b;
new (d) int;
}

it may not related the clang analyzer, looks more like a clang crash-on-invalid.

stack trace:

clang-tidy: llvm-project/clang/lib/AST/RecordLayoutBuilder.cpp:3033: const clang::ASTRecordLayout &clang::ASTContext::getASTRecordLayout(const clang::RecordDecl ) const: Assertion `D && "Cannot get layout of forward declarations!"' failed.
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace.
Stack dump:
7:3: Error evaluating statement
#​0 0x000000000221a99f llvm::sys::PrintStackTrace(llvm::raw_ostream&) llvm-project/llvm/lib/Support/Unix/Signals.inc:564:13
#​1 0x0000000002218c90 llvm::sys::RunSignalHandlers() llvm-project/llvm/lib/Support/Signals.cpp:69:18
#​2 0x000000000221ae05 #​0 0x000000000221a99f llvm::sys::PrintStackTrace(llvm::raw_ostream&) llvm-project/llvm/lib/Support/Unix/Signals.inc:564:13
#​1 0x0000000002218c90 llvm::sys::RunSignalHandlers() llvm-project/llvm/lib/Support/Signals.cpp:69:18
#​2 0x000000000221ae05 SignalHandler(int) llvm-project/llvm/lib/Support/Unix/Signals.inc:396:3
#​3 0x00007fe41ee19110 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14110)
#​4 0x00007fe41e8f3761 raise /build/glibc-M65Gwz/glibc-2.30/signal/../sysdeps/unix/sysv/linux/raise.c:51:1
SignalHandler(int) llvm-project/llvm/lib/Support/Unix/Signals.inc:396:3
#​3 0x00007fe41ee19110 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x14110)
#​4 0x00007fe41e8f3761 raise /build/glibc-M65Gwz/glibc-2.30/signal/../sysdeps/unix/sysv/linux/raise.c:51:1
#​5 0x00007fe41e8dd55b abort #​5 0x00007fe41e8dd55b abort /build/glibc-M65Gwz/glibc-2.30/stdlib/abort.c:81:7
#​6 0x00007fe41e8dd42f/build/glibc-M65Gwz/glibc-2.30/stdlib/abort.c:81:7
#​6 0x00007fe41e8dd42f get_sysdep_segment_value /build/glibc-M65Gwz/glibc-2.30/intl/loadmsgcat.c:509:8
get_sysdep_segment_value /build/glibc-M65Gwz/glibc-2.30/intl/loadmsgcat.c:509:8
#​7 0x00007fe41e8dd42f _nl_load_domain /build/glibc-M65Gwz/glibc-2.30/intl/loadmsgcat.c:970:34#7 0x00007fe41e8dd42f _nl_load_domain /build/glibc-M65Gwz/glibc-2.30/intl/loadmsgcat.c:970:34
#​8 0x00007fe41e8ec092 (
#​8 0x00007fe41e8ec092 (/lib/x86_64-linux-gnu/libc.so.6+0x34092)
#​9/lib/x86_64-linux-gnu/libc.so.6+0x34092)
#​9 0x0000000001f190f5 clang::ASTContext::getASTRecordLayout(clang::RecordDecl const
) const llvm-project/clang/lib/AST/RecordLayoutBuilder.cpp:3034:3 0x0000000001f190f5 clang::ASTContext::getASTRecordLayout(clang::RecordDecl const*) const llvm-project/clang/lib/AST/RecordLayoutBuilder.cpp:3034:3
#​10 0x0000000001c4f420 clang::ASTContext::getTypeInfoImpl(clang::Type const*) const llvm-project/clang/lib/AST/ASTContext.cpp:2233:37
#​11 0x0000000001c5086e
#​10 0x0000000001c4f420 clang::ASTContext::getTypeInfoImpl(clang::Type const*) const llvm-project/clang/lib/AST/ASTContext.cpp:2233:37
#​11 0x0000000001c5086e clang::ASTContext::getTypeInfo(clang::Type const*) const llvm-project/clang/lib/AST/ASTContext.cpp:1867:17
#​12 clang::ASTContext::getTypeInfo(clang::Type const*) const llvm-project/clang/lib/AST/ASTContext.cpp:1867:17
#​12 0x0000000001c4f38b clang::ASTContext::getTypeInfoImpl(clang::Type const*) const llvm-project/clang/lib/AST/ASTContext.cpp:0:0
0x0000000001c4f38b clang::ASTContext::getTypeInfoImpl(clang::Type const*) const llvm-project/clang/lib/AST/ASTContext.cpp:0:0
#​13 0x0000000001c5086e clang::ASTContext::getTypeInfo(clang::Type const*) const#13 0x0000000001c5086e clang::ASTContext::getTypeInfo(clang::Type const*) const llvm-project/clang/lib/AST/ASTContext.cpp:1867:17
#​14 0x0000000000be4103 llvm-project/clang/lib/AST/ASTContext.cpp:1867:17
#​14 0x0000000000be4103 clang::ASTContext::getTypeInfo(clang::QualType) const llvm-project/clang/include/clang/AST/ASTContext.h:2054:51
clang::ASTContext::getTypeInfo(clang::QualType) const llvm-project/clang/include/clang/AST/ASTContext.h:2054:51
#​15 0x0000000000be4103 clang::ASTContext::getTypeAlign(clang::QualType) const #​15 0x0000000000be4103 clang::ASTContext::getTypeAlign(clang::QualType) const llvm-project/clang/include/clang/AST/ASTContext.h:2091:52
#​16 0x0000000000be4103 (anonymous namespace)::PlacementNewChecker::getStorageAlign(clang::ento::CheckerContext&, clang::ValueDecl const*) const/usr/local/google/home/hokein/workspace/llvm-project/clang/include/clang/AST/ASTContext.h:2091:52
#​16 0x0000000000be4103 (anonymous namespace)::PlacementNewChecker::getStorageAlign(clang::ento::CheckerContext&, clang::ValueDecl const*) const llvm-project/clang/lib/StaticAnalyzer/Checkers/CheckPlacementNew.cpp:169:46
#​17 0x0000000000be37fc llvm-project/clang/lib/StaticAnalyzer/Checkers/CheckPlacementNew.cpp:169:46
#​17 0x0000000000be37fc (anonymous namespace)::PlacementNewChecker::isVarRegionAlignedProperly(clang::ento::VarRegion const*, clang::ento::CheckerContext&, clang::Expr const*, unsigned int) const llvm-project/clang/lib/StaticAnalyzer/Checkers/CheckPlacementNew.cpp:265:23
#​18 (anonymous namespace)::PlacementNewChecker::isVarRegionAlignedProperly(clang::ento::VarRegion const*, clang::ento::CheckerContext&, clang::Expr const*, unsigned int) const llvm-project/clang/lib/StaticAnalyzer/Checkers/CheckPlacementNew.cpp:265:23
#​18 0x0000000000be37fc (anonymous namespace)::PlacementNewChecker::checkPlaceIsAlignedProperly(clang::CXXNewExpr const*, clang::ento::CheckerContext&) const llvm-project/clang/lib/StaticAnalyzer/Checkers/CheckPlacementNew.cpp:289:7 0x0000000000be37fc (anonymous namespace)::PlacementNewChecker::checkPlaceIsAlignedProperly(clang::CXXNewExpr const*, clang::ento::CheckerContext&) const llvm-project/clang/lib/StaticAnalyzer/Checkers/CheckPlacementNew.cpp:289:7
#​19 0x0000000000be37fc (anonymous namespace)::PlacementNewChecker::checkPreStmt(clang::CXXNewExpr const*, clang::ento::CheckerContext&) const
#​19 0x0000000000be37fc (anonymous namespace)::PlacementNewChecker::checkPreStmt(clang::CXXNewExpr const*, clang::ento::CheckerContext&) const llvm-project/clang/lib/StaticAnalyzer/Checkers/CheckPlacementNew.cpp:307:3
#​20 0x0000000000be37fc void clang::ento::check::PreStmtclang::CXXNewExpr::_checkStmt<(anonymous namespace)::PlacementNewChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) llvm-project/clang/lib/StaticAnalyzer/Checkers/CheckPlacementNew.cpp:307:3
#​20 0x0000000000be37fc void clang::ento::check::PreStmtclang::CXXNewExpr::_checkStmt<(anonymous namespace)::PlacementNewChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) llvm-project/clang/include/clang/StaticAnalyzer/Core/Checker.h:85:33
#​21 0x0000000000e39382 llvm-project/clang/include/clang/StaticAnalyzer/Core/Checker.h:85:33
#​21 0x0000000000e39382 void expandGraphWithCheckers<(anonymous namespace)::CheckStmtContext>((anonymous namespace)::CheckStmtContext, clang::ento::ExplodedNodeSet&, clang::ento::ExplodedNodeSet const&) llvm-project/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp:138:25
#​22 void expandGraphWithCheckers<(anonymous namespace)::CheckStmtContext>((anonymous namespace)::CheckStmtContext, clang::ento::ExplodedNodeSet&, clang::ento::ExplodedNodeSet const&) llvm-project/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp:138:25
#​22 0x0000000000e39382 clang::ento::CheckerManager::runCheckersForStmt(bool, clang::ento::ExplodedNodeSet&, clang::ento::ExplodedNodeSet const&, clang::Stmt const*, clang::ento::ExprEngine&, bool) llvm-project/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp:192:3
0x0000000000e39382 clang::ento::CheckerManager::runCheckersForStmt(bool, clang::ento::ExplodedNodeSet&, clang::ento::ExplodedNodeSet const&, clang::Stmt const*, clang::ento::ExprEngine&, bool) llvm-project/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp:192:3
#​23 0x0000000000e5dedf llvm::SmallVectorTemplateCommon<clang::ento::ExplodedNode*, void>::isSmall() const #​23 0x0000000000e5dedf llvm::SmallVectorTemplateCommon<clang::ento::ExplodedNode*, void>::isSmall() const llvm-project/llvm/include/llvm/ADT/SmallVector.h:124:39
#​24 0x0000000000e5dedf llvm-project/llvm/include/llvm/ADT/SmallVector.h:124:39
#​24 0x0000000000e5dedf llvm::SmallVectorImplclang::ento::ExplodedNode*::~SmallVectorImpl() llvm-project/llvm/include/llvm/ADT/SmallVector.h:381:16
#​25 llvm::SmallVectorImplclang::ento::ExplodedNode*::~SmallVectorImpl() llvm-project/llvm/include/llvm/ADT/SmallVector.h:381:16
#​25 0x0000000000e5dedf llvm::SmallVector<clang::ento::ExplodedNode*, 4u>::~SmallVector() llvm-project/llvm/include/llvm/ADT/SmallVector.h:891:3
0x0000000000e5dedf llvm::SmallVector<clang::ento::ExplodedNode*, 4u>::~SmallVector() llvm-project/llvm/include/llvm/ADT/SmallVector.h:891:3
#​26 0x0000000000e5dedf llvm::SetVector<clang::ento::ExplodedNode*, llvm::SmallVector<clang::ento::ExplodedNode*, 4u>, llvm::SmallDenseSet<clang::ento::ExplodedNode*, 4u, llvm::DenseMapInfoclang::ento::ExplodedNode* > >::~SetVector() #​26 0x0000000000e5dedf llvm::SetVector<clang::ento::ExplodedNode*, llvm::SmallVector<clang::ento::ExplodedNode*, 4u>, llvm::SmallDenseSet<clang::ento::ExplodedNode*, 4u, llvm::DenseMapInfoclang::ento::ExplodedNode* > >::~SetVector() llvm-project/llvm/include/llvm/ADT/SetVector.h:40:7
#​27 0x0000000000e5dedf clang::ento::ExplodedNodeSet::~ExplodedNodeSet()/usr/local/google/home/hokein/workspace/llvm-project/llvm/include/llvm/ADT/SetVector.h:40:7
#​27 0x0000000000e5dedf clang::ento::ExplodedNodeSet::~ExplodedNodeSet() llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h:463:7
#​28 0x0000000000e5dedf clang::ento::ExprEngine::Visit(clang::Stmt const*, clang::ento::ExplodedNode*, clang::ento::ExplodedNodeSet&) llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h:463:7
#​28 0x0000000000e5dedf clang::ento::ExprEngine::Visit(clang::Stmt const*, clang::ento::ExplodedNode*, clang::ento::ExplodedNodeSet&) llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp:1639:7
#​29 0x0000000000e5b02b llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp:1639:7
#​29 0x0000000000e5b02b clang::ento::ExprEngine::ProcessStmt(clang::Stmt const*, clang::ento::ExplodedNode*) llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp:792:9
#​30 clang::ento::ExprEngine::ProcessStmt(clang::Stmt const*, clang::ento::ExplodedNode*) llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp:792:9
#​30 0x0000000000e5acc9 clang::ento::ExprEngine::processCFGElement(clang::CFGElement, clang::ento::ExplodedNode*, unsigned int, clang::ento::NodeBuilderContext*) llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp:637:7 0x0000000000e5acc9 clang::ento::ExprEngine::processCFGElement(clang::CFGElement, clang::ento::ExplodedNode*, unsigned int, clang::ento::NodeBuilderContext*) llvm-project/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp:637:7
#​31 0x0000000000e44660 clang::ento::CoreEngine::HandlePostStmt(clang::CFGBlock const*, unsigned int, clang::ento::ExplodedNode*)
#​31 0x0000000000e44660 clang::ento::CoreEngine::HandlePostStmt(clang::CFGBlock const*, unsigned int, clang::ento::ExplodedNode*) llvm-project/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp:468:1
#​32 0x0000000000e4367f llvm-project/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp:468:1
#​32 0x0000000000e4367f std::__uniq_ptr_impl<clang::ento::WorkList, std::default_deleteclang::ento::WorkList >::_M_ptr() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_ptr.h:154:42
#​33 std::__uniq_ptr_impl<clang::ento::WorkList, std::default_deleteclang::ento::WorkList >::_M_ptr() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_ptr.h:154:42
#​33 0x0000000000e4367f std::unique_ptr<clang::ento::WorkList, std::default_deleteclang::ento::WorkList >::get() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_ptr.h:361:21
0x0000000000e4367f std::unique_ptr<clang::ento::WorkList, std::default_deleteclang::ento::WorkList >::get() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_ptr.h:361:21
#​34 0x0000000000e4367f std::unique_ptr<clang::ento::WorkList, std::default_deleteclang::ento::WorkList >::operator->() const #​34 0x0000000000e4367f std::unique_ptr<clang::ento::WorkList, std::default_deleteclang::ento::WorkList >::operator->() const /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_ptr.h:355:9
#​35 0x0000000000e4367f /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/unique_ptr.h:355:9
#​35 0x0000000000e4367f clang::ento::CoreEngine::ExecuteWorkList(clang::LocationContext const*, unsigned int, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>) llvm-project/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp:128:10
#​36 clang::ento::CoreEngine::ExecuteWorkList(clang::LocationContext const*, unsigned int, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>) llvm-project/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp:128:10
#​36 0x0000000000b7720c llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>::release() llvm-project/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h:188:9
0x0000000000b7720c llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>::release() llvm-project/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h:188:9
#​37 0x0000000000b7720c llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>::~IntrusiveRefCntPtr() llvm-project/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h:156:27
#​37 0x0000000000b7720c llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>::~IntrusiveRefCntPtr() llvm-project/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h:156:27
#​38 0x0000000000b7720c clang::ento::ExprEngine::ExecuteWorkList(clang::LocationContext const*, unsigned int) llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h:184:5#38 0x0000000000b7720c clang::ento::ExprEngine::ExecuteWorkList(clang::LocationContext const*, unsigned int) llvm-project/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h:184:5
#​39 0x0000000000b7720c (anonymous namespace)::AnalysisConsumer::RunPathSensitiveChecks(clang::Decl*, clang::ento::ExprEngine::InliningModes, llvm::DenseSet<clang::Decl const*, llvm::DenseMapInfo<clang::Decl const*> >)
#​39 0x0000000000b7720c (anonymous namespace)::AnalysisConsumer::RunPathSensitiveChecks(clang::Decl
, clang::ento::ExprEngine::InliningModes, llvm::DenseSet<clang::Decl const*, llvm::DenseMapInfo<clang::Decl const*> >) llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:701:7
#​40 0x0000000000b7720c llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:701:7
#​40 0x0000000000b7720c (anonymous namespace)::AnalysisConsumer::HandleCode(clang::Decl
, unsigned int, clang::ento::ExprEngine::InliningModes, llvm::DenseSet<clang::Decl const*, llvm::DenseMapInfo<clang::Decl const*> >) llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:674:5
(anonymous namespace)::AnalysisConsumer::HandleCode(clang::Decl
, unsigned int, clang::ento::ExprEngine::InliningModes, llvm::DenseSet<clang::Decl const*, llvm::DenseMapInfo<clang::Decl const*> >) llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:674:5
#​41 0x0000000000b5d6c8 llvm::DenseMapBase<llvm::DenseMap<clang::Decl const
, llvm::detail::DenseSetEmpty, llvm::DenseMapInfo<clang::Decl const*>, llvm::detail::DenseSetPair<clang::Decl const*> >, clang::Decl const*, llvm::detail::DenseSetEmpty, llvm::DenseMapInfo<clang::Decl const*>, llvm::detail::DenseSetPair<clang::Decl const*> >::empty() const #​41 0x0000000000b5d6c8 llvm::DenseMapBase<llvm::DenseMap<clang::Decl const*, llvm::detail::DenseSetEmpty, llvm::DenseMapInfo<clang::Decl const*>, llvm::detail::DenseSetPair<clang::Decl const*> >, clang::Decl const*, llvm::detail::DenseSetEmpty, llvm::DenseMapInfo<clang::Decl const*>, llvm::detail::DenseSetPair<clang::Decl const*> >::empty() const llvm-project/llvm/include/llvm/ADT/DenseMap.h:98:28
#​42 0x0000000000b5d6c8 llvm-project/llvm/include/llvm/ADT/DenseMap.h:98:28
#​42 0x0000000000b5d6c8 llvm::DenseMapBase<llvm::DenseMap<clang::Decl const*, llvm::detail::DenseSetEmpty, llvm::DenseMapInfo<clang::Decl const*>, llvm::detail::DenseSetPair<clang::Decl const*> >, clang::Decl const*, llvm::detail::DenseSetEmpty, llvm::DenseMapInfo<clang::Decl const*>, llvm::detail::DenseSetPair<clang::Decl const*> >::begin() llvm-project/llvm/include/llvm/ADT/DenseMap.h:77:9
#​43 llvm::DenseMapBase<llvm::DenseMap<clang::Decl const*, llvm::detail::DenseSetEmpty, llvm::DenseMapInfo<clang::Decl const*>, llvm::detail::DenseSetPair<clang::Decl const*> >, clang::Decl const*, llvm::detail::DenseSetEmpty, llvm::DenseMapInfo<clang::Decl const*>, llvm::detail::DenseSetPair<clang::Decl const*> >::begin() llvm-project/llvm/include/llvm/ADT/DenseMap.h:77:9
#​43 0x0000000000b5d6c8 llvm::detail::DenseSetImpl<clang::Decl const*, llvm::DenseMap<clang::Decl const*, llvm::detail::DenseSetEmpty, llvm::DenseMapInfo<clang::Decl const*>, llvm::detail::DenseSetPair<clang::Decl const*> >, llvm::DenseMapInfo<clang::Decl const*> >::begin() llvm-project/llvm/include/llvm/ADT/DenseSet.h:165:45
#​44 0x0000000000b5d6c80x0000000000b5d6c8 llvm::detail::DenseSetImpl<clang::Decl const*, llvm::DenseMap<clang::Decl const*, llvm::detail::DenseSetEmpty, llvm::DenseMapInfo<clang::Decl const*>, llvm::detail::DenseSetPair<clang::Decl const*> >, llvm::DenseMapInfo<clang::Decl const*> >::begin() llvm-project/llvm/include/llvm/ADT/DenseSet.h:165:45
#​44 0x0000000000b5d6c8 (anonymous namespace)::AnalysisConsumer::HandleDeclsCallGraph(unsigned int) llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:467:29
#​45 (anonymous namespace)::AnalysisConsumer::HandleDeclsCallGraph(unsigned int) llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:467:29
#​45 0x0000000000b5d6c8 (anonymous namespace)::AnalysisConsumer::runAnalysisOnTranslationUnit(clang::ASTContext&) llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:514:5 0x0000000000b5d6c8 (anonymous namespace)::AnalysisConsumer::runAnalysisOnTranslationUnit(clang::ASTContext&) llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:514:5
#​46 0x0000000000b5d6c8 (anonymous namespace)::AnalysisConsumer::HandleTranslationUnit(clang::ASTContext&)
#​46 0x0000000000b5d6c8 (anonymous namespace)::AnalysisConsumer::HandleTranslationUnit(clang::ASTContext&) llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:544:5
#​47 0x0000000000fd873c llvm-project/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp:544:5
#​47 0x0000000000fd873c __gnu_cxx::__normal_iterator<std::unique_ptr<clang::ASTConsumer, std::default_deleteclang::ASTConsumer >, std::vector<std::unique_ptr<clang::ASTConsumer, std::default_deleteclang::ASTConsumer >, std::allocator<std::unique_ptr<clang::ASTConsumer, std::default_deleteclang::ASTConsumer > > > >::operator++() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_iterator.h:829:2
#​48 __gnu_cxx::__normal_iterator<std::unique_ptr<clang::ASTConsumer, std::default_deleteclang::ASTConsumer >
, std::vector<std::unique_ptr<clang::ASTConsumer, std::default_deleteclang::ASTConsumer >, std::allocator<std::unique_ptr<clang::ASTConsumer, std::default_deleteclang::ASTConsumer > > > >::operator++() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_iterator.h:829:2
#​48 0x0000000000fd873c clang::MultiplexConsumer::HandleTranslationUnit(clang::ASTContext&) llvm-project/clang/lib/Frontend/MultiplexConsumer.cpp:291:23
0x0000000000fd873c clang::MultiplexConsumer::HandleTranslationUnit(clang::ASTContext&) llvm-project/clang/lib/Frontend/MultiplexConsumer.cpp:291:23
#​49 0x00000000011161b3 __gnu_cxx::__normal_iterator<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback >, std::vector<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback >, std::allocator<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback > > > >::__normal_iterator(std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback > const&) #​49 0x00000000011161b3 __gnu_cxx::__normal_iterator<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback >, std::vector<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback >, std::allocator<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback > > > >::__normal_iterator(std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback > const&) /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_iterator.h:807:20
#​50 0x00000000011161b3 std::vector<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback >, std::allocator<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback > > >::begin() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_iterator.h:807:20
#​50 0x00000000011161b3 std::vector<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback >, std::allocator<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback > > >::begin() /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_vector.h:809:16
#​51 0x00000000011161b3 /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_vector.h:809:16
#​51 0x00000000011161b3 void clang::finalize<std::vector<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback >, std::allocator<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback > > > >(std::vector<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback >, std::allocator<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback > > >&, clang::Sema const&) llvm-project/clang/include/clang/Sema/TemplateInstCallback.h:54:16
#​52 void clang::finalize<std::vector<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback >, std::allocator<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback > > > >(std::vector<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback >, std::allocator<std::unique_ptr<clang::TemplateInstantiationCallback, std::default_deleteclang::TemplateInstantiationCallback > > >&, clang::Sema const&) llvm-project/clang/include/clang/Sema/TemplateInstCallback.h:54:16
#​52 0x00000000011161b3 clang::ParseAST(clang::Sema&, bool, bool) llvm-project/clang/lib/Parse/ParseAST.cpp:178:3
0x00000000011161b3 clang::ParseAST(clang::Sema&, bool, bool) llvm-project/clang/lib/Parse/ParseAST.cpp:178:3
#​53 0x0000000000fbfc01 clang::FrontendAction::Execute() llvm-project/clang/lib/Frontend/FrontendAction.cpp:957:10#53 0x0000000000fbfc01 clang::FrontendAction::Execute() llvm-project/clang/lib/Frontend/FrontendAction.cpp:957:10
#​54 0x0000000000f717f3
#​54 0x0000000000f717f3 llvm::Error::getPtr() const llvm-project/llvm/include/llvm/Support/Error.h:274:42
#​55 llvm::Error::getPtr() const llvm-project/llvm/include/llvm/Support/Error.h:274:42
#​55 0x0000000000f717f3 llvm::Error::operator bool() llvm-project/llvm/include/llvm/Support/Error.h:236:16
0x0000000000f717f3 llvm::Error::operator bool() llvm-project/llvm/include/llvm/Support/Error.h:236:16
#​56 0x0000000000f717f3 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) llvm-project/clang/lib/Frontend/CompilerInstance.cpp:973:23
#​57#56 0x0000000000f717f3 clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) llvm-project/clang/lib/Frontend/CompilerInstance.cpp:973:23
#​57 0x0000000000b5144c clang::tooling::FrontendActionFactory::runInvocation(std::shared_ptrclang::CompilerInvocation, clang::FileManager*, std::shared_ptrclang::PCHContainerOperations, clang::DiagnosticConsumer*) llvm-project/clang/lib/Tooling/Tooling.cpp:397:33
0x0000000000b5144c clang::tooling::FrontendActionFactory::runInvocation(std::shared_ptrclang::CompilerInvocation, clang::FileManager*, std::shared_ptrclang::PCHContainerOperations, clang::DiagnosticConsumer*) llvm-project/clang/lib/Tooling/Tooling.cpp:397:33
#​58 0x0000000000b23826 clang::tidy::runClangTidy(clang::tidy::ClangTidyContext&, clang::tooling::CompilationDatabase const&, llvm::ArrayRef<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, llvm::IntrusiveRefCntPtrllvm::vfs::OverlayFileSystem, bool, llvm::StringRef)::ActionFactory::runInvocation(std::shared_ptrclang::CompilerInvocation, clang::FileManager*, std::shared_ptrclang::PCHContainerOperations, clang::DiagnosticConsumer*) #​58 0x0000000000b23826 clang::tidy::runClangTidy(clang::tidy::ClangTidyContext&, clang::tooling::CompilationDatabase const&, llvm::ArrayRef<std::__cxx11::basic_string<char, std::char_traits, std::allocator > >, llvm::IntrusiveRefCntPtrllvm::vfs::OverlayFileSystem, bool, llvm::StringRef)::ActionFactory::runInvocation(std::shared_ptrclang::CompilerInvocation, clang::FileManager*, std::shared_ptrclang::PCHContainerOperations, clang::DiagnosticConsumer*) llvm-project/clang-tools-extra/clang-tidy/ClangTidy.cpp:547:37
#​59 0x0000000000b511b6 llvm-project/clang-tools-extra/clang-tidy/ClangTidy.cpp:547:37
#​59 0x0000000000b511b6 clang::tooling::ToolInvocation::runInvocation(char const*, clang::driver::Compilation*, std::shared_ptrclang::CompilerInvocation, std::shared_ptrclang::PCHContainerOperations) llvm-project/clang/lib/Tooling/Tooling.cpp:372:18

@hokein
Copy link
Collaborator Author

hokein commented Jun 10, 2020

assigned to @haoNoQ

@haoNoQ
Copy link
Collaborator

haoNoQ commented Jun 10, 2020

Probably regressed in https://reviews.llvm.org/D76996. I alerted the author but i'll try to keep an eye on this as well.

@llvmbot llvmbot transferred this issue from llvm/llvm-bugzilla-archive Dec 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugzilla Issues migrated from bugzilla clang:static analyzer
Projects
None yet
Development

No branches or pull requests

2 participants