Quuxplusone / LLVMBugzillaTest

0 stars 0 forks source link

Crash running clang-tidy (bugprone-redundant-branch-condition) #46565

Open Quuxplusone opened 4 years ago

Quuxplusone commented 4 years ago
Bugzilla Link PR47596
Status NEW
Importance P release blocker
Reported by Matthew Fincham (matthewf@cat.co.za)
Reported on 2020-09-21 08:07:05 -0700
Last modified on 2021-03-01 16:22:07 -0800
Version unspecified
Hardware PC Linux
CC adam.balogh@ericsson.com, alexfh@google.com, djasper@google.com, eugene.zelenko@gmail.com, klimek@google.com, N.James93@hotmail.co.uk
Fixed by commit(s)
Attachments arch2_gdoubleindexmap.h (5922 bytes, text/plain)
Blocks
Blocked by
See also
Hi. I am hitting a crash using clang-tidy from today (21/9/2020). The backtrace
follows. I will try and get a code-snippet that reproduces the crash.
---
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash
backtrace.
Stack dump:
0.  Program arguments: /usr/local/llvm-latest/bin/clang-tidy
arch2_directoryscanner.cpp -header-filter=.* -warnings-as-errors= -checks=*,-
abseil-no-internal-dependencies,-altera-struct-pack-align,-bugprone-narrowing-
conversions,-cathexis-refactor-*,-clang-diagnostic-unknown-pragmas,-
cppcoreguidelines-init-variables,-cppcoreguidelines-narrowing-conversions,-
cppcoreguidelines-owning-memory,-cppcoreguidelines-pro-bounds-array-to-pointer-
decay,-fuchsia-*,-google-build-using-namespace,-google-readability-namespace-
comments,-google-readability-todo,-google-runtime-int,-google-runtime-
references,-hicpp-named-parameter,-hicpp-no-array-decay,-hicpp-signed-bitwise,-
llvm-header-guard,-llvm-include-order,-llvm-namespace-comment,-llvmlibc-callee-
namespace,-llvmlibc-implementation-in-namespace,-llvmlibc-restrict-system-libc-
headers,-misc-misplaced-widening-cast,-misc-non-private-member-variables-in-
classes,-misc-unused-parameters,-modernize-use-trailing-return-type,-
readability-isolate-declaration,-readability-magic-numbers,-readability-
misleading-indentation,-readability-named-parameter,-readability-redundant-
access-specifiers,-bugprone-signed-char-misuse,-bugprone-suspicious-include,-
bugprone-too-small-loop-variable,-cathexis-quality-*,-cert-dcl21-cpp,-cert-
err58-cpp,-cert-oop57-cpp,-clang-analyzer-optin.performance.Padding,-
cppcoreguidelines-avoid-non-const-global-variabnles,-cppcoreguidelines-macro-
usage,-cppcoreguidelines-non-private-member-variables-in-classes,-
cppcoreguidelines-pro-type-const-cast,-cppcoreguidelines-pro-type-reinterpret-
cast,-cppcoreguidelines-pro-type-vararg,-misc-no-recursion,-modernize-avoid-c-
arrays,-readability-function-size,-cert-dcl37-c,-cert-dcl51-cpp,-cert-str34-c,-
cppcoreguidelines-avoid-c-arrays,-cppcoreguidelines-avoid-magic-numbers,-google-
readability-function-size,-hicpp-avoid-c-arrays,-hicpp-avoid-goto,-hicpp-
deprecated-headers,-hicpp-explicit-conversions,-hicpp-function-size,-hicpp-
invalid-access-moved,-hicpp-member-init,-hicpp-move-const-arg,-hicpp-no-malloc,-
hicpp-noexcept-move,-hicpp-special-member-functions,-hicpp-uppercase-literal-
suffix,-hicpp-use-auto,-hicpp-use-equals-default,-hicpp-use-override,-hicpp-
vararg,-llvm-qualified-auto,-readability-use-anyofallof,-performance-move-const-
arg, -- -DCAPTURESTATION -DHAS_FG -DPRODUCT=everything -DPLATFORM=Ubuntu_18_04 -
DPLATFORM_Ubuntu_18_04=1 -DARCH=x86_64 -DARCH_x86_64=1 -DWORDSIZE64 -
DBUILD_VERSION=trunk -DCLANG_TIDY=1 -D_FILE_OFFSET_BITS=64 -DBUILD_ARCH2LIB -
isystem ../../../../../pkg/gsl/include -isystem ../../../../../pkg/absl/lib -
isystem /usr/include/libxml2 -isystem ../../../../../pkg/libopenssl/include -
std=c++14 -fPIC -I../../../../../vms/libs/archive/v100/lib -
I../../../../../vms/libs/archive/itemcontainer/lib -
I../../../../../vms/libs/archive/v100/definitions -
I../../../../../vms/servers/database/timeline/v100/interface -
I../../../../../cdl/libs/threads/v200/lib -I../../../../../cdl/libs/kernel/kern
-I../../../../../cdl/libs/cat/lib -
I../../../../../cdl/libs/imgproc/linearalgebra -
I../../../../../cdl/libs/cryptography/lib -I../../../../../cdl/libs/utils -
I../../../../../cdl/libs/textmarkup/xml -
I../../../../../cdl/libs/textmarkup/json/v200 -
I../../../../../cdl/libs/textmarkup/html/v100 -
I../../../../../cdl/libs/textmarkup/html/v200 -I../../../../../cdl/libs/core -
I../../../../../pkg/absl/build -Ibuild_x86_64_debug_tidy
1.  <eof> parser at end of file
 #0 0x000056202f88688c llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/usr/local/llvm-latest/bin/clang-tidy+0x273c88c)
 #1 0x000056202f884824 llvm::sys::RunSignalHandlers() (/usr/local/llvm-latest/bin/clang-tidy+0x273a824)
 #2 0x000056202f884973 SignalHandler(int) (/usr/local/llvm-latest/bin/clang-tidy+0x273a973)
 #3 0x00007f83b25a48a0 __restore_rt (/lib/x86_64-linux-gnu/libpthread.so.0+0x128a0)
 #4 0x000056202f517e95 clang::Stmt::getEndLoc() const (/usr/local/llvm-latest/bin/clang-tidy+0x23cde95)
 #5 0x000056202d8db2ba clang::tidy::bugprone::RedundantBranchConditionCheck::check(clang::ast_matchers::MatchFinder::MatchResult const&) (/usr/local/llvm-latest/bin/clang-tidy+0x7912ba)
 #6 0x000056202f213338 clang::ast_matchers::internal::(anonymous namespace)::MatchASTVisitor::MatchVisitor::visitMatch(clang::ast_matchers::BoundNodes const&) (/usr/local/llvm-latest/bin/clang-tidy+0x20c9338)
 #7 0x000056202f252d08 clang::ast_matchers::internal::BoundNodesTreeBuilder::visitMatches(clang::ast_matchers::internal::BoundNodesTreeBuilder::Visitor*) (/usr/local/llvm-latest/bin/clang-tidy+0x2108d08)
 #8 0x000056202f21597e clang::ast_matchers::internal::(anonymous namespace)::MatchASTVisitor::matchWithFilter(clang::DynTypedNode const&) (/usr/local/llvm-latest/bin/clang-tidy+0x20cb97e)
 #9 0x000056202f23967c clang::ast_matchers::internal::(anonymous namespace)::MatchASTVisitor::TraverseStmt(clang::Stmt*, llvm::SmallVectorImpl<llvm::PointerIntPair<clang::Stmt*, 1u, bool, llvm::PointerLikeTypeTraits<clang::Stmt*>, llvm::PointerIntPairInfo<clang::Stmt*, 1u, llvm::PointerLikeTypeTraits<clang::Stmt*> > > >*) (.part.5452) (/usr/local/llvm-latest/bin/clang-tidy+0x20ef67c)
#10 0x000056202f236d15
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::dataTraverseNode(clang::Stmt*,
llvm::SmallVectorImpl<llvm::PointerIntPair<clang::Stmt*, 1u, bool,
llvm::PointerLikeTypeTraits<clang::Stmt*>,
llvm::PointerIntPairInfo<clang::Stmt*, 1u,
llvm::PointerLikeTypeTraits<clang::Stmt*> > > >*) (/usr/local/llvm-
latest/bin/clang-tidy+0x20ecd15)
#11 0x000056202f2395a9
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseStmt(clang::Stmt*,
llvm::SmallVectorImpl<llvm::PointerIntPair<clang::Stmt*, 1u, bool,
llvm::PointerLikeTypeTraits<clang::Stmt*>,
llvm::PointerIntPairInfo<clang::Stmt*, 1u,
llvm::PointerLikeTypeTraits<clang::Stmt*> > > >*) (/usr/local/llvm-
latest/bin/clang-tidy+0x20ef5a9)
#12 0x000056202f241454 clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::TraverseStmt(clang::Stmt*,
llvm::SmallVectorImpl<llvm::PointerIntPair<clang::Stmt*, 1u, bool,
llvm::PointerLikeTypeTraits<clang::Stmt*>,
llvm::PointerIntPairInfo<clang::Stmt*, 1u,
llvm::PointerLikeTypeTraits<clang::Stmt*> > > >*) (.part.5452.constprop.5585)
(/usr/local/llvm-latest/bin/clang-tidy+0x20f7454)
#13 0x000056202f24e24d
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseFunctionHelper(clang::FunctionDecl*)
(/usr/local/llvm-latest/bin/clang-tidy+0x210424d)
#14 0x000056202f23563e clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::TraverseDecl(clang::Decl*) (.part.5449)
(/usr/local/llvm-latest/bin/clang-tidy+0x20eb63e)
#15 0x000056202f236c54
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseDeclContextHelper(clang::DeclContext*)
(.part.5450) (/usr/local/llvm-latest/bin/clang-tidy+0x20ecc54)
#16 0x000056202f2352fa clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::TraverseDecl(clang::Decl*) (.part.5449)
(/usr/local/llvm-latest/bin/clang-tidy+0x20eb2fa)
#17 0x000056202f24d3db
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseClassTemplateDecl(clang::ClassTemplateDecl*)
(/usr/local/llvm-latest/bin/clang-tidy+0x21033db)
#18 0x000056202f234855 clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::TraverseDecl(clang::Decl*) (.part.5449)
(/usr/local/llvm-latest/bin/clang-tidy+0x20ea855)
#19 0x000056202f236c54
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseDeclContextHelper(clang::DeclContext*)
(.part.5450) (/usr/local/llvm-latest/bin/clang-tidy+0x20ecc54)
#20 0x000056202f234edf clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::TraverseDecl(clang::Decl*) (.part.5449)
(/usr/local/llvm-latest/bin/clang-tidy+0x20eaedf)
#21 0x000056202f2365e8
clang::ast_matchers::MatchFinder::matchAST(clang::ASTContext&) (/usr/local/llvm-
latest/bin/clang-tidy+0x20ec5e8)
#22 0x000056202e67a5a8
clang::MultiplexConsumer::HandleTranslationUnit(clang::ASTContext&)
(/usr/local/llvm-latest/bin/clang-tidy+0x15305a8)
#23 0x000056202e7ff359 clang::ParseAST(clang::Sema&, bool, bool)
(/usr/local/llvm-latest/bin/clang-tidy+0x16b5359)
#24 0x000056202e659c99 clang::FrontendAction::Execute() (/usr/local/llvm-
latest/bin/clang-tidy+0x150fc99)
#25 0x000056202e6109fb
clang::CompilerInstance::ExecuteAction(clang::FrontendAction&) (/usr/local/llvm-
latest/bin/clang-tidy+0x14c69fb)
#26 0x000056202dfe4e4f
clang::tooling::FrontendActionFactory::runInvocation(std::shared_ptr<clang::CompilerInvocation>,
clang::FileManager*, std::shared_ptr<clang::PCHContainerOperations>,
clang::DiagnosticConsumer*) (/usr/local/llvm-latest/bin/clang-tidy+0xe9ae4f)
#27 0x000056202df92abe
clang::tidy::runClangTidy(clang::tidy::ClangTidyContext&,
clang::tooling::CompilationDatabase const&,
llvm::ArrayRef<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >,
llvm::IntrusiveRefCntPtr<llvm::vfs::OverlayFileSystem>, bool,
llvm::StringRef)::ActionFactory::runInvocation(std::shared_ptr<clang::CompilerInvocation>,
clang::FileManager*, std::shared_ptr<clang::PCHContainerOperations>,
clang::DiagnosticConsumer*) (/usr/local/llvm-latest/bin/clang-tidy+0xe48abe)
#28 0x000056202dfdbb1c clang::tooling::ToolInvocation::runInvocation(char
const*, clang::driver::Compilation*,
std::shared_ptr<clang::CompilerInvocation>,
std::shared_ptr<clang::PCHContainerOperations>) (/usr/local/llvm-
latest/bin/clang-tidy+0xe91b1c)
#29 0x000056202dfe1b01 clang::tooling::ToolInvocation::run() (/usr/local/llvm-
latest/bin/clang-tidy+0xe97b01)
#30 0x000056202dfe3ea2
clang::tooling::ClangTool::run(clang::tooling::ToolAction*) (/usr/local/llvm-
latest/bin/clang-tidy+0xe99ea2)
#31 0x000056202df96684
clang::tidy::runClangTidy(clang::tidy::ClangTidyContext&,
clang::tooling::CompilationDatabase const&,
llvm::ArrayRef<std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > >,
llvm::IntrusiveRefCntPtr<llvm::vfs::OverlayFileSystem>, bool, llvm::StringRef)
(/usr/local/llvm-latest/bin/clang-tidy+0xe4c684)
#32 0x000056202d81e759 clang::tidy::clangTidyMain(int, char const**)
(/usr/local/llvm-latest/bin/clang-tidy+0x6d4759)
#33 0x00007f83b143cb97 __libc_start_main /build/glibc-2ORdQG/glibc-
2.27/csu/../csu/libc-start.c:344:0
#34 0x000056202d81ac7a _start (/usr/local/llvm-latest/bin/clang-tidy+0x6d0c7a)
Segmentation fault (core dumped)
Quuxplusone commented 4 years ago

Attached arch2_gdoubleindexmap.h (5922 bytes, text/plain): Source code triggering check

Quuxplusone commented 4 years ago

I executed clang-tidy on the header file you provided and it did not cause crash even with fixes enabled. Actually, it found the errors and fixed them correctly. I think I need more information to investigate this bug. Could you first build your Clang in debug mode so at leaast I see the line number where it crashes? And I really need a code where I can reproduce the crash.

Quuxplusone commented 4 years ago
Sorry for the late reply. Here is the backtrace from a debug build:
---
(gdb) bt
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007f4770a9098b in __GI_abort () at abort.c:100
#2  0x00007f4770a8042a in __assert_fail_base (fmt=0x7f4770c07a38 "%s%s%s:%u:
%s%sAssertion `%s' failed.\n%n",
    assertion=assertion@entry=0x55daf65cec70 "isa<X>(Val) && \"cast<Ty>() argument of incompatible type!\"",
    file=file@entry=0x55daf65cec10 "/home/matthewf/cathexis/llvm/20200923/src/llvm-project/llvm/include/llvm/Support/Casting.h", line=line@entry=269,
    function=function@entry=0x55daf65d19c0 <llvm::cast_retty<clang::BinaryOperator, clang::Expr const*>::ret_type llvm::cast<clang::BinaryOperator, clang::Expr const>(clang::Expr const*)::__PRETTY_FUNCTION__> "typename llvm::cast_retty<X, Y*>::ret_type llvm::cast(Y*) [with X = clang::BinaryOperator; Y = const clang::Expr; typename llvm::cast_retty<X, Y*>::ret_type = const clang::BinaryOperator*]") at assert.c:92
#3  0x00007f4770a804a2 in __GI___assert_fail (assertion=0x55daf65cec70
"isa<X>(Val) && \"cast<Ty>() argument of incompatible type!\"",
    file=0x55daf65cec10 "/home/matthewf/cathexis/llvm/20200923/src/llvm-project/llvm/include/llvm/Support/Casting.h", line=269,
    function=0x55daf65d19c0 <llvm::cast_retty<clang::BinaryOperator, clang::Expr const*>::ret_type llvm::cast<clang::BinaryOperator, clang::Expr const>(clang::Expr const*)::__PRETTY_FUNCTION__> "typename llvm::cast_retty<X, Y*>::ret_type llvm::cast(Y*) [with X = clang::BinaryOperator; Y = const clang::Expr; typename llvm::cast_retty<X, Y*>::ret_type = const clang::BinaryOperator*]") at assert.c:101
#4  0x000055daf229fc3b in llvm::cast<clang::BinaryOperator, clang::Expr const>
(Val=0x7f476e1615b0) at /home/matthewf/cathexis/llvm/20200923/src/llvm-
project/llvm/include/llvm/Support/Casting.h:269
#5  0x000055daf22cd294 in
clang::tidy::bugprone::RedundantBranchConditionCheck::check
(this=0x55dafd362d30, Result=...)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang-tools-extra/clang-tidy/bugprone/RedundantBranchConditionCheck.cpp:132
#6  0x000055daf31176a4 in clang::tidy::ClangTidyCheck::run
(this=0x55dafd362d30, Result=...) at
/home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang-tools-extra/clang-tidy/ClangTidyCheck.cpp:65
#7  0x000055daf53a8103 in clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::MatchVisitor::visitMatch (this=0x7fff77a86d10,
BoundNodesView=...)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/lib/ASTMatchers/ASTMatchFinder.cpp:842
#8  0x000055daf5492419 in
clang::ast_matchers::internal::BoundNodesTreeBuilder::visitMatches
(this=0x7fff77a86d30, ResultVisitor=0x7fff77a86d10)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/lib/ASTMatchers/ASTMatchersInternal.cpp:101
#9  0x000055daf53a726e in clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::matchWithFilter (this=0x7fff77a87630, DynNode=...)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/lib/ASTMatchers/ASTMatchFinder.cpp:653
#10 0x000055daf53a7463 in clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::matchDispatch (this=0x7fff77a87630,
Node=0x7f476e1628e8)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/lib/ASTMatchers/ASTMatchFinder.cpp:676
#11 0x000055daf53ae15f in clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::match<clang::Stmt> (this=0x7fff77a87630, Node=...)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/lib/ASTMatchers/ASTMatchFinder.cpp:578
#12 0x000055daf53a89f1 in clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::TraverseStmt (this=0x7fff77a87630,
StmtNode=0x7f476e1628e8, Queue=0x7fff77a86f90)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/lib/ASTMatchers/ASTMatchFinder.cpp:1015
#13 0x000055daf544f29f in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseLabelStmt (this=0x7fff77a87630,
S=0x7f476e162918, Queue=0x7fff77a86f90)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/include/clang/AST/RecursiveASTVisitor.h:2226
#14 0x000055daf53e67cf in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::dataTraverseNode (this=0x7fff77a87630,
S=0x7f476e162918, Queue=0x7fff77a86f90)
    at /home/matthewf/cathexis/llvm/20200923/build_debug/tools/clang/include/clang/AST/StmtNodes.inc:1395
#15 0x000055daf53b04df in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseStmt (this=0x7fff77a87630,
S=0x7f476e173640, Queue=0x0)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/include/clang/AST/RecursiveASTVisitor.h:599
#16 0x000055daf53a8a08 in clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::TraverseStmt (this=0x7fff77a87630,
StmtNode=0x7f476e173640, Queue=0x0)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/lib/ASTMatchers/ASTMatchFinder.cpp:1016
#17 0x000055daf542737b in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseFunctionHelper (this=0x7fff77a87630,
D=0x7f476f0a8288)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/include/clang/AST/RecursiveASTVisitor.h:2056
#18 0x000055daf53d8b03 in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseCXXMethodDecl (this=0x7fff77a87630,
D=0x7f476f0a8288)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/include/clang/AST/RecursiveASTVisitor.h:2075
#19 0x000055daf53afbd4 in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseDecl (this=0x7fff77a87630,
D=0x7f476f0a8288)
    at /home/matthewf/cathexis/llvm/20200923/build_debug/tools/clang/include/clang/AST/DeclNodes.inc:411
#20 0x000055daf53a89ba in clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::TraverseDecl (this=0x7fff77a87630,
DeclNode=0x7f476f0a8288)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/lib/ASTMatchers/ASTMatchFinder.cpp:1008
#21 0x000055daf54216c4 in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseDeclContextHelper (this=0x7fff77a87630,
DC=0x7f476f914b40)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/include/clang/AST/RecursiveASTVisitor.h:1383
#22 0x000055daf53d646d in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseClassTemplateSpecializationDecl
(this=0x7fff77a87630, D=0x7f476f914b00)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/include/clang/AST/RecursiveASTVisitor.h:1898
#23 0x000055daf53af83e in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseDecl (this=0x7fff77a87630,
D=0x7f476f914b00)
    at /home/matthewf/cathexis/llvm/20200923/build_debug/tools/clang/include/clang/AST/DeclNodes.inc:267
#24 0x000055daf53a89ba in clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::TraverseDecl (this=0x7fff77a87630,
DeclNode=0x7f476f914b00)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/lib/ASTMatchers/ASTMatchFinder.cpp:1008
#25 0x000055daf5425aa9 in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseTemplateInstantiations
(this=0x7fff77a87630, D=0x55dafdef9d00)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/include/clang/AST/RecursiveASTVisitor.h:1667
#26 0x000055daf53d50d1 in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseClassTemplateDecl (this=0x7fff77a87630,
D=0x55dafdef9d00)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/include/clang/AST/RecursiveASTVisitor.h:1759
#27 0x000055daf53af6a6 in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseDecl (this=0x7fff77a87630,
D=0x55dafdef9d00)
    at /home/matthewf/cathexis/llvm/20200923/build_debug/tools/clang/include/clang/AST/DeclNodes.inc:207
#28 0x000055daf53a89ba in clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::TraverseDecl (this=0x7fff77a87630,
DeclNode=0x55dafdef9d00)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/lib/ASTMatchers/ASTMatchFinder.cpp:1008
#29 0x000055daf54216c4 in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseDeclContextHelper (this=0x7fff77a87630,
DC=0x55dafd384980)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/include/clang/AST/RecursiveASTVisitor.h:1383
#30 0x000055daf53dc3d0 in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseTranslationUnitDecl (this=0x7fff77a87630,
D=0x55dafd384958)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/include/clang/AST/RecursiveASTVisitor.h:1484
#31 0x000055daf53b0135 in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseDecl (this=0x7fff77a87630,
D=0x55dafd384958)
    at /home/matthewf/cathexis/llvm/20200923/build_debug/tools/clang/include/clang/AST/DeclNodes.inc:595
#32 0x000055daf53a89ba in clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor::TraverseDecl (this=0x7fff77a87630,
DeclNode=0x55dafd384958)
    at /home/matthewf/cathexis/llvm/20200923/src/llvm-project/clang/lib/ASTMatchers/ASTMatchFinder.cpp:1008
#33 0x000055daf53b219b in
clang::RecursiveASTVisitor<clang::ast_matchers::internal::(anonymous
namespace)::MatchASTVisitor>::TraverseAST (this=0x7fff77a87630, AST=...)
Quuxplusone commented 4 years ago

Please let me know if there is anything more I can do - print some variable values etc.

Quuxplusone commented 3 years ago
Is this the same bug that https://llvm.org/PR48008 fixed?
Can you try running the failing code again against a trunk build(after
https://github.com/llvm/llvm-project/commit/4364539b3a4c5e73561e5ff29e6952a75e89dc43)