-
Notifications
You must be signed in to change notification settings - Fork 12k
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
[Clang-Tidy] misc-const-correctness
crash due to seemingly infinite recursion
#60895
Comments
@llvm/issue-subscribers-clang-tidy |
Could you please provide a reproducer? As short term mitigation you can disable 'misc-const-correctness', as this check should be the cause for the analysis. |
On first sight it looks like a really deep recursion. |
I will try to look at it again the next couple of days, but I have to say that my knowledge of preprocessing and the likes is very limited. The part after |
misc-const-correctness
crash due to seemingly infinite recursion
You are analyzing https://github.com/hyrise/hyrise on |
@Bouncner something i just noticed: you seem to be doing an unity-build and analyze the merged translation units with That kinda makes sense to create very deep recursions. I fail to fully build the project, as it requires so many dependencies I don't have. My suspicion is the feature of the @Bouncner could you please try and not use unity-builds just to check this hypothesis? |
I will do that. |
Happens also without a unity build:
|
Building a small example is a lot more work that I expected. I don't know if I can provide that. What I know is that we sefault on two files. Both files are the only ones to include the bytell hash map by skarupke. Clang-tidying this map alone does not yield a segfault. |
@Bouncner do you have the You can replace the If that works, I would have a much better time reproducing and figuring out what happens. |
I hope I've done everything right. You can find the file here: |
Thank you! |
It seems that it is pre-processed with I can not reproduce the crash right now. I had to remove the line references of you file in order to run
|
I'll take a look later. |
Still fails on my machine :(
|
If there is anything more that I can do to help here, please don't hesitate to ask. |
I tried to reproduce with a checkout for clang-tidy 15.0.7, but the TU leads to compilation error and Excerpt
That puzzles me a lot. It does not make sense to me, that your ubuntu can actually analyze the TU but my build can't. |
I reran with docker
Lets take a step back and pre-process the file again. |
I cannot reproduce it in following version Homebrew LLVM version 15.0.6 |
I updated to LLVM version 15.0.7 and still get the same error when running your last command (
I'll try to recreate the pre-processed file again. |
I ran the entire pipeline again, still segfaulting. No idea what I am doing wrong. :-/
Create dir for the tests (Hyrise master checked out). Testing unity build.
=> Segfault Without unity.
Segfaults on with Output``` [ 31%] Building CXX object src/lib/CMakeFiles/hyrise_impl.dir/operators/aggregate_hash.cpp.o Error running '/hyrise/scripts/clang_tidy_wrapper.sh': PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace. Stack dump: 0. Program arguments: clang-tidy --extra-arg-before=--driver-mode=g++ /hyrise/src/lib/operators/aggregate_hash.cpp -- /usr/bin/clang++ -DBOOST_THREAD_VERSION=5 -DHYRISE_DEBUG=1 -DHYRISE_NUMA_SUPPORT=1 -DHYRISE_WITH_JEMALLOC -DJSON_DIAGNOSTICS=0 -DJSON_USE_IMPLICIT_CONVERSIONS=1 -Dhyrise_impl_EXPORTS -I/hyrise/src/benchmarklib -I/hyrise/src/lib -I/hyrise/src/plugins -I/hyrise/clang-tidy-issue -I/hyrise/third_party/compact_vector/include -I/hyrise/third_party/lz4/lib -I/ hyrise/third_party/magic_enum/include -I/hyrise/third_party/sql-parser/src -I/hyrise/third_party/uninitialized_vector -I/hyrise/third_party/zstd/lib -isystem /hyrise/clang-tidy-issue/src/lib/../../third_party/jemalloc/include -isystem /hyrise/third_party/cpp-btree/include/btree -isystem /hyrise/third_party/cxxopts/include -isystem /hyrise/third_party/flat_hash_map -isystem /hyrise/third_party/nlohmann_json/single_include -isystem /hyrise/third_party/robin-map/include -isyst em /hyrise/third_party/sparse-map/include -g -fopenmp-simd -O0 -fPIC -DBOOST_ASIO_DISABLE_CONCEPTS -pthread -Wno-unknown-warning-option -Wall -Wextra -pedantic -Werror -Wno-unused-parameter -Wno-dollar-in-identifier-extension -Wno-unknown-pragmas -Wno-subobject-linkage -Wno-deprecated-dynamic-exception-spec -Weverything -Wshadow-all -Wno-c++98-compat -Wno-c++98-compat-pedantic -Wno-documentation -Wno-padded -Wno-global-constructors -Wno-sign-conversion -Wno-exit-time-destru ctors -Wno-switch-enum -Wno-weak-vtables -Wno-double-promotion -Wno-covered-switch-default -Wno-unused-macros -Wno-newline-eof -Wno-missing-variable-declarations -Wno-weak-template-vtables -Wno-missing-prototypes -Wno-float-equal -Wno-return-std-move-in-c++11 -Wno-unreachable-code-break -Wno-undefined-func-template -Wno-pass-failed -Wno-ctad-maybe-unsupported -Wno-header-hygiene -Wno-poison-system-directories -Wno-zero-as-null-pointer-constant -Xclang -fno-pch-timestamp -fP IC -Wno-cast-qual -Wno-old-style-cast -Wno-shorten-64-to-32 -Wno-shadow -Wno-reserved-id-macro -Wno-atomic-implicit-seq-cst -std=gnu++20 -Winvalid-pch -Xclang -include-pch -Xclang /hyrise/clang-tidy-issue/src/lib/CMakeFiles/hyrise_impl.dir/cmake_pch.hxx.pch -Xclang -include -Xclang /hyrise/clang-tidy-issue/src/lib/CMakeFiles/hyrise_impl.dir/cmake_pch.hxx -MD -MT src/lib/CMakeFiles/hyrise_impl.dir/operators/aggregate_hash.cpp.o -MF CMakeFiles/hyrise_impl.dir/operators/aggreg ate_hash.cpp.o.d -o CMakeFiles/hyrise_impl.dir/operators/aggregate_hash.cpp.o -c /hyrise/src/lib/operators/aggregate_hash.cpp 1. parser at end of file 2. ASTMatcher: Processing 'misc-const-correctness' against: CXXMethodDecl ska::detailv8::sherwood_v8_table, unsigned long, std::hash, ska::detailv3::KeyOrValueHasher, std::hash>, std::equal_to, ska::detailv3::KeyOrValueEquality, std::equal_to>, boost::container::pmr::polymorphic_allocator>, boost::container::pmr::polymorphic_allocator, '\b'>::emplace_direct_hit : , line:914:5> --- Bound Nodes Begin --- decl-stmt - { DeclStmt : } function-decl - { CXXMethodDecl ska::detailv8::sherwood_v8_table, unsigned long, std::hash, ska::detailv3::KeyOrValueHasher, std::hash>, std::equal_to, ska::detailv3::KeyOrValueEquality, std::equal_to>, boost::container::pmr::polymorphic_allocator>, boost::container::pmr::polymorphic_allocator, '\b'>::emplace_direct_hit : , line:914:5> } local-value - { VarDecl new_value : } scope - { CompoundStmt : } --- Bound Nodes End --- #0 0x00007f601072e3b1 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/lib/x86_64-linux-gnu/libLLVM-15.so.1+0xf043b1) #1 0x00007f601072c0fe llvm::sys::RunSignalHandlers() (/lib/x86_64-linux-gnu/libLLVM-15.so.1+0xf020fe) #2 0x00007f601072e8d6 (/lib/x86_64-linux-gnu/libLLVM-15.so.1+0xf048d6) #3 0x00007f600f311520 (/lib/x86_64-linux-gnu/libc.so.6+0x42520) #4 0x000055c4e36055e4 clang::ParentMapContext::traverseIgnored(clang::DynTypedNode const&) const (/usr/lib/llvm-15/bin/clang-tidy+0xf505e4) #5 0x000055c4e34c8074 clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe13074) #6 0x000055c4e34cb4db (/usr/lib/llvm-15/bin/clang-tidy+0xe164db) #7 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #8 0x000055c4e2f9aa45 (/usr/lib/llvm-15/bin/clang-tidy+0x8e5a45) #9 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #10 0x000055c4e34cb4db (/usr/lib/llvm-15/bin/clang-tidy+0xe164db) #11 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #12 0x000055c4e2f9aa45 (/usr/lib/llvm-15/bin/clang-tidy+0x8e5a45) #13 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #14 0x000055c4e345fdb1 (/usr/lib/llvm-15/bin/clang-tidy+0xdaadb1) #15 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #16 0x000055c4e2e4ad35 (/usr/lib/llvm-15/bin/clang-tidy+0x795d35) #17 0x000055c4e34c820a clang::ast_matchers::internal::DynTypedMatcher::matchesNoKindCheck(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1320a) #18 0x000055c4e34cb305 (/usr/lib/llvm-15/bin/clang-tidy+0xe16305) #19 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #20 0x000055c4e2e4aca3 clang::ast_matchers::internal::matcher_hasLHS0Matcher >::matches(clang::BinaryOperator const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0x795ca3) #21 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #22 0x000055c4e34cb4db (/usr/lib/llvm-15/bin/clang-tidy+0xe164db) #23 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #24 0x000055c4e2e4a973 clang::ast_matchers::internal::matcher_hasEitherOperand0Matcher >::matches(clang::BinaryOperator const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0x795973) #25 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #26 0x000055c4e34cb4db (/usr/lib/llvm-15/bin/clang-tidy+0xe164db) #27 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #28 0x000055c4e34cb4db (/usr/lib/llvm-15/bin/clang-tidy+0xe164db) #29 0x000055c4e34caaab (/usr/lib/llvm-15/bin/clang-tidy+0xe15aab) #30 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #31 0x000055c4e3471955 (/usr/lib/llvm-15/bin/clang-tidy+0xdbc955) #32 0x000055c4e3470fa6 (/usr/lib/llvm-15/bin/clang-tidy+0xdbbfa6) #33 0x000055c4e3480c0b (/usr/lib/llvm-15/bin/clang-tidy+0xdcbc0b) #34 0x000055c4e34725b3 (/usr/lib/llvm-15/bin/clang-tidy+0xdbd5b3) #35 0x000055c4e3470fb8 (/usr/lib/llvm-15/bin/clang-tidy+0xdbbfb8) #36 0x000055c4e346ef15 (/usr/lib/llvm-15/bin/clang-tidy+0xdb9f15) #37 0x000055c4e34699ec (/usr/lib/llvm-15/bin/clang-tidy+0xdb49ec) #38 0x000055c4e3468e69 (/usr/lib/llvm-15/bin/clang-tidy+0xdb3e69) #39 0x000055c4e3474290 (/usr/lib/llvm-15/bin/clang-tidy+0xdbf290) #40 0x000055c4e3472fe8 (/usr/lib/llvm-15/bin/clang-tidy+0xdbdfe8) #41 0x000055c4e3470fb8 (/usr/lib/llvm-15/bin/clang-tidy+0xdbbfb8) #42 0x000055c4e3473dbb (/usr/lib/llvm-15/bin/clang-tidy+0xdbedbb) #43 0x000055c4e3471be4 (/usr/lib/llvm-15/bin/clang-tidy+0xdbcbe4) #44 0x000055c4e3468739 (/usr/lib/llvm-15/bin/clang-tidy+0xdb3739) #45 0x000055c4e34682bf (/usr/lib/llvm-15/bin/clang-tidy+0xdb32bf) #46 0x000055c4e3466f06 (/usr/lib/llvm-15/bin/clang-tidy+0xdb1f06) #47 0x000055c4e2e88cde (/usr/lib/llvm-15/bin/clang-tidy+0x7d3cde) #48 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #49 0x000055c4e34cb787 (/usr/lib/llvm-15/bin/clang-tidy+0xe16787) #50 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #51 0x000055c4e2e5178d (/usr/lib/llvm-15/bin/clang-tidy+0x79c78d) #52 0x000055c4e34c809e clang::ast_matchers::internal::DynTypedMatcher::matches(clang::DynTypedNode const&, clang::ast_matchers::internal::ASTMatchFinder*, clang::ast_matchers::internal::BoundNodesTreeBuilder*) const (/usr/lib/llvm-15/bin/clang-tidy+0xe1309e) #53 0x000055c4e34939c5 (/usr/lib/llvm-15/bin/clang-tidy+0xdde9c5) #54 0x000055c4e3465ce6 clang::ast_matchers::MatchFinder::match(clang::DynTypedNode const&, clang::ASTContext&) (/usr/lib/llvm-15/bin/clang-tidy+0xdb0ce6) #55 0x000055c4e2e5b879 llvm::SmallVector clang::ast_matchers::match >(clang::ast_matchers::internal::Matcher, clang::DynTypedNode const&, clang::ASTContext&) (/usr/lib/llvm-15/bin/clang-tidy+0x7a6879) #56 0x000055c4e3451ddd clang::ExprMutationAnalyzer::findDirectMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9cddd) #57 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #58 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #59 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #60 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #61 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #62 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #63 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #64 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #65 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #66 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #67 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #68 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #69 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #70 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #71 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #72 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #73 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #74 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #75 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #76 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #77 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #78 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #79 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #80 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #81 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #82 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #83 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #84 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #85 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #86 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #87 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #88 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #89 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #90 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #91 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #92 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #93 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #94 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #95 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #96 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #97 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #98 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #99 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #100 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #101 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #102 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #103 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #104 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #105 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #106 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #107 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #108 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #109 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #110 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #111 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #112 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #113 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #114 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #115 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #116 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #117 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #118 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #119 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #120 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #121 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #122 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #123 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #124 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #125 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #126 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #127 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #128 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #129 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #130 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #131 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #132 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #133 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #134 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #135 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #136 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #137 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #138 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #139 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #140 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #141 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #142 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #143 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #144 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #145 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #146 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #147 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #148 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #149 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #150 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #151 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #152 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #153 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #154 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #155 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #156 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #157 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #158 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #159 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #160 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #161 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #162 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #163 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #164 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #165 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #166 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #167 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #168 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #169 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #170 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #171 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #172 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #173 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #174 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #175 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #176 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #177 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #178 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #179 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #180 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #181 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #182 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #183 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #184 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #185 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #186 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #187 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #188 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #189 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #190 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #191 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #192 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #193 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #194 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #195 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #196 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #197 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #198 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #199 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #200 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #201 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #202 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #203 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #204 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #205 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #206 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #207 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #208 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #209 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #210 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #211 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #212 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #213 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #214 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #215 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #216 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #217 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #218 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #219 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #220 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #221 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #222 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #223 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #224 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #225 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #226 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #227 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #228 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #229 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #230 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #231 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #232 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #233 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #234 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #235 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #236 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #237 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #238 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #239 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #240 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #241 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #242 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #243 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #244 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #245 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #246 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #247 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #248 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) #249 0x000055c4e345e99e clang::FunctionParmMutationAnalyzer::findMutation(clang::ParmVarDecl const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda999e) #250 0x000055c4e345a2a4 clang::ExprMutationAnalyzer::findFunctionArgMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xda52a4) #251 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #252 0x000055c4e3454b01 clang::ExprMutationAnalyzer::findCastMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd9fb01) #253 0x000055c4e344d17d clang::ExprMutationAnalyzer::findMutationMemoized(clang::Expr const*, llvm::ArrayRef, llvm::DenseMap, llvm::detail::DenseMapPair >&) (/usr/lib/llvm-15/bin/clang-tidy+0xd9817d) #254 0x000055c4e344cff6 clang::ExprMutationAnalyzer::findMutation(clang::Expr const*) (/usr/lib/llvm-15/bin/clang-tidy+0xd97ff6) #255 0x000055c4e345a79c clang::ExprMutationAnalyzer::tryEachDeclRef(clang::Decl const*, clang::Stmt const* (clang::ExprMutationAnalyzer::*)(clang::Expr const*)) (/usr/lib/llvm-15/bin/clang-tidy+0xda579c) Segmentation fault make[2]: *** [src/lib/CMakeFiles/hyrise_impl.dir/build.make:1421: src/lib/CMakeFiles/hyrise_impl.dir/operators/aggregate_hash.cpp.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:2456: src/lib/CMakeFiles/hyrise_impl.dir/all] Error 2 make: *** [Makefile:156: all] Error 2 ```This is the command from
Preprocess:
=-> Segfault |
I think I have hit this too: void f() { int&a = a; }
|
Pinging @JonasToth @HerrCai0907 |
@PiotrZSL Maybe this is relevant to you? |
I found another infinite recursion and maybe the root cause for this issue: template<class T>
void f1(T &&a);
template<class T>
void f2(T &&a);
void f() {
int a = 0;
f1(a);
}
template<class T>
void f1(T &&a) {
f2<T>(a);
}
template<class T>
void f2(T &&a) {
f1<T>(a);
} |
…ference Partialy fixes: llvm#60895
…ference Partialy fixes: llvm#60895
It seems that the issue from #60895 (comment) is not fixed yet: |
I will create another issue for this case later since they are different issue and will be fixed separately. |
I have created #89376. |
When trying to run our CI pipeline with Clang-Tidy 15, it segfaults.
Clang-Tidy 14 works fine.
On Ubuntu 22.04.
The text was updated successfully, but these errors were encountered: