The analysis for const-ness of local variables required a view generally useful
matchers that are extracted into its own patch.
They are decompositionDecl and forEachArgumentWithParamType, that works
for calls through function pointers as well.
This is a reupload of https://reviews.llvm.org/D72505, that already landed,
but had to be reverted due to a GCC crash on powerpc
(https://reviews.llvm.org/rG4c48ea68e491cb42f1b5d43ffba89f6a7f0dadc4)
Because this took a long time to adress, i decided to redo this patch and
have a clean workflow.
I try to coordinate with someone that has a PPC to apply this patch and
test for the crash. If everything is fine, I intend to just commit.
If the crash is still happening, i hope to at least find the cause.
clang-tidy: error: expected expression [clang-diagnostic-error]
not useful
clang-tidy: error: function definition is not allowed here [clang-diagnostic-error]
not useful
clang-tidy: error: namespaces can only be defined in global or namespace scope [clang-diagnostic-error]
not useful
clang-tidy: error: no template named 'matcher_hasAnyParameter0Matcher' in namespace 'clang::ast_matchers::internal'; did you mean 'matcher_hasParameter0Matcher'? [clang-diagnostic-error]
not useful
clang-tidy: error: template template argument has different template parameters than its corresponding template template parameter [clang-diagnostic-error]
not useful
clang-tidy: error: expected expression [clang-diagnostic-error]
not useful
clang-tidy: error: function definition is not allowed here [clang-diagnostic-error]
not useful
clang-tidy: error: namespaces can only be defined in global or namespace scope [clang-diagnostic-error]
not useful
clang-tidy: error: no template named 'matcher_hasAnyParameter0Matcher' in namespace 'clang::ast_matchers::internal'; did you mean 'matcher_hasParameter0Matcher'? [clang-diagnostic-error]
not useful
clang-tidy: error: template template argument has different template parameters than its corresponding template template parameter [clang-diagnostic-error]
not useful
clang-tidy: error: expected expression [clang-diagnostic-error]
not useful
clang-tidy: error: function definition is not allowed here [clang-diagnostic-error]
not useful
clang-tidy: error: namespaces can only be defined in global or namespace scope [clang-diagnostic-error]
not useful
clang-tidy: error: no template named 'matcher_hasAnyParameter0Matcher' in namespace 'clang::ast_matchers::internal'; did you mean 'matcher_hasParameter0Matcher'? [clang-diagnostic-error]
not useful
clang-tidy: error: template template argument has different template parameters than its corresponding template template parameter [clang-diagnostic-error]
not useful