llvm-project/clang/test
Kirstóf Umann 9cca5c1391 [analyzer] Make checker silencing work for non-pathsensitive bug reports
D66572 separated BugReport and BugReporter into basic and path sensitive
versions. As a result, checker silencing, which worked deep in the path
sensitive report generation facilities became specific to it. DeadStoresChecker,
for instance, despite being in the static analyzer, emits non-pathsensitive
reports, and was impossible to silence.

This patch moves the corresponding code before the call to the virtual function
generateDiagnosticForConsumerMap (which is overriden by the specific kinds of
bug reporters). Although we see bug reporting as relatively lightweight compared
to the analysis, this will get rid of several steps we used to throw away.

Quoting from D65379:

At a very high level, this consists of 3 steps:

For all BugReports in the same BugReportEquivClass, collect all their error
nodes in a set. With that set, create a new, trimmed ExplodedGraph whose leafs
are all error nodes.
Until a valid report is found, construct a bug path, which is yet another
ExplodedGraph, that is linear from a given error node to the root of the graph.
Run all visitors on the constructed bug path. If in this process the report got
invalidated, start over from step 2.
Checker silencing used to kick in after all of these. Now it does before any of
them :^)

Differential Revision: https://reviews.llvm.org/D102914

Change-Id: Ice42939304516f2bebd05a1ea19878b89c96a25d
2021-06-17 10:27:34 +02:00
..
APINotes
ARCMT
AST [clang] Make CXXDefaultArgExpr inherit dependence from the inner Expr 2021-06-10 14:51:08 +02:00
ASTMerge Modify TypePrinter to differentiate between anonymous struct and unnamed struct 2021-02-22 14:16:43 -08:00
Analysis [analyzer] Make checker silencing work for non-pathsensitive bug reports 2021-06-17 10:27:34 +02:00
CXX [clang] use correct builtin type for defaulted comparison analyzer 2021-06-17 02:08:31 +02:00
ClangScanDeps [clang][deps] NFC: Fix an XFAIL test on Windows 2021-06-14 14:37:26 +02:00
CodeCompletion [clang][PreProcessor] Cutoff parsing after hitting completion point 2021-05-10 11:24:27 +02:00
CodeGen Update @llvm.powi to handle different int sizes for the exponent 2021-06-17 09:38:28 +02:00
CodeGenCUDA [CUDA][HIP] Fix store of vtbl in ctor 2021-06-08 10:24:44 -04:00
CodeGenCXX [Debug-Info] guard DW_LANG_C_plus_plus_14 under strict dwarf 2021-06-16 03:17:56 +00:00
CodeGenCoroutines Return "[CGCall] Annotate `this` argument with alignment" 2021-05-13 20:33:14 +03:00
CodeGenHIP
CodeGenObjC Reapply [CaptureTracking] Do not check domination 2021-05-16 15:46:31 +02:00
CodeGenObjCXX Return "[CGCall] Annotate `this` argument with alignment" 2021-05-13 20:33:14 +03:00
CodeGenOpenCL Reland "[AMDGPU] Add gfx1013 target" 2021-06-08 21:15:35 -04:00
CodeGenOpenCLCXX [OpenCL] Fix overloading resolution of addrspace constructors 2021-06-11 11:12:33 +01:00
CodeGenSYCL [SYCL] Fix __builtin_sycl_unique_stable_name to work on windows/spir 2021-06-02 13:16:14 -07:00
Coverage
CoverageMapping [clang] remove an incremental build workaround 2021-05-05 12:21:56 -04:00
Driver [clang-cl][sanitizer] Add -fsanitize-address-use-after-return to clang. 2021-06-11 12:07:35 -07:00
FixIt [Clang] -Wunused-but-set-parameter and -Wunused-but-set-variable 2021-06-01 15:38:48 -07:00
Format Remove redundant test that was causing intermittent build bot failures. 2021-06-15 12:46:03 -07:00
Frontend [IR] make -warn-frame-size into a module attr 2021-06-10 16:15:27 -07:00
Headers [OpenCL] Add builtin header test 2021-06-10 10:05:53 +01:00
Import
Index [clang] RecursiveASTVisitor visits ObjCPropertyRefExpr's class receiver 2021-06-01 14:45:25 -04:00
Integration XFAIL thinlto testcases on AIX 2021-04-26 17:02:06 +00:00
InterfaceStubs [test] Make ELF tests less reliant on the lexicographical order of non-local symbols 2021-02-13 01:01:06 -08:00
Interpreter [AIX][clang-repl][test] Mark unsupported pending XCOFF64 integrated-as 2021-05-15 22:41:45 -04:00
Layout [AIX] Implement AIX special bitfield related alignment rules 2021-05-17 11:30:29 -04:00
Lexer [clang] p1099 using-enum feature macro & web page 2021-06-09 05:40:53 -07:00
Misc [IR] make -warn-frame-size into a module attr 2021-06-10 16:15:27 -07:00
Modules [clang][modules][pch] Allow loading PCH with different modules cache path 2021-06-14 11:04:56 +02:00
OpenMP [OPENMP]Fix PR50699: capture locals in combine directrives for aligned clause. 2021-06-15 04:58:02 -07:00
PCH [clang] Fix ternary operator in the second for loop statement 2021-05-16 10:42:52 -07:00
Parser [clang] Implement the using_if_exists attribute 2021-06-02 10:30:24 -04:00
ParserSYCL Reimplement __builtin_unique_stable_name- 2021-05-27 07:12:20 -07:00
Preprocessor [AIX] Define __STDC_NO_ATOMICS__ and __STDC_NO_THREADS__ 2021-06-07 22:45:41 -04:00
Profile Revert test fixups after e9a9c85098 (which reverted a14fc74). 2021-06-04 10:42:25 -04:00
Refactor
Rewriter
Sema [Clang] Test case for -Wunused-but-set-variable, warn for volatile. 2021-06-14 10:25:59 -07:00
SemaCUDA [CUDA][HIP] Promote const variables to constant 2021-06-01 21:28:41 -04:00
SemaCXX Do not merge LocalInstantiationScope for template specialization 2021-06-14 23:28:04 -04:00
SemaObjC [clang][ObjC] allow the use of NSAttributedString * argument type with format attribute 2021-06-11 13:24:32 -07:00
SemaObjCXX [clang] NRVO: Improvements and handling of more cases. 2021-06-17 01:56:38 +02:00
SemaOpenCL [OpenCL] Add memory_scope_all_devices 2021-06-08 11:51:12 +01:00
SemaOpenCLCXX [OpenCL] Fix overloading resolution of addrspace constructors 2021-06-11 11:12:33 +01:00
SemaSYCL Replace 'magic static' with a member variable for SCYL kernel names 2021-05-27 13:46:31 -07:00
SemaTemplate PR50337, PR50561: Fix determination of whether a template parameter list 2021-06-02 13:06:40 -07:00
TableGen Fix test expectations for %diff documentation. 2021-03-30 17:48:08 -07:00
Templight
Tooling
Unit Support multi-configuration generators correctly in several config files 2021-02-11 09:32:20 -08:00
VFS [clang] Don't crash when loading invalid VFS for the module dep collector 2021-04-26 17:05:22 -07:00
clang-rename
utils/update_cc_test_checks Return "[CGCall] Annotate `this` argument with alignment" 2021-05-13 20:33:14 +03:00
.clang-format
CMakeLists.txt [clang-repl] Recommit "Land initial infrastructure for incremental parsing" 2021-05-13 06:30:29 +00:00
TestRunner.sh
cxx-sections.data
lit.cfg.py [clang-repl] Recommit "Land initial infrastructure for incremental parsing" 2021-05-13 06:30:29 +00:00
lit.site.cfg.py.in [clang][lit] Allow test cases to use the compiler that are used to compile Clang 2021-03-24 11:32:57 +01:00
make_test_dirs.pl Prefer /usr/bin/env xxx over /usr/bin/xxx where xxx = perl, python, awk 2021-02-25 11:32:27 +01:00