hanchenye-llvm-project/clang/test
Artem Dergachev 5337efc69c [analyzer] MallocChecker: Suppress false positives in shared pointers.
Throw away MallocChecker warnings that occur after releasing a pointer within a
destructor (or its callees) after performing C11 atomic fetch_add or fetch_sub
within that destructor (or its callees).

This is an indication that the destructor's class is likely a
reference-counting pointer. The analyzer is not able to understand that the
original reference count is usually large enough to avoid most use-after-frees.

Even when the smart pointer is a local variable, we still have these false
positives that this patch suppresses, because the analyzer doesn't currently
support atomics well enough.

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

llvm-svn: 326249
2018-02-27 21:19:33 +00:00
..
ARCMT Avoid assumption that lit tests are writable. NFC 2018-01-08 15:05:01 +00:00
ASTMerge [ASTImporter] Fix lexical DC for templated decls; support VarTemplatePartialSpecDecl 2018-02-14 11:18:00 +00:00
Analysis [analyzer] MallocChecker: Suppress false positives in shared pointers. 2018-02-27 21:19:33 +00:00
CXX Bring r325915 back. 2018-02-23 19:30:48 +00:00
CodeCompletion [CodeComplete] Omit templated constructors from member list too. 2018-01-22 20:44:47 +00:00
CodeGen [RecordLayout] Don't align to non-power-of-2 sizes when using -mms-bitfields 2018-02-27 06:27:06 +00:00
CodeGenCUDA Really fix test on windows. 2018-02-23 19:38:41 +00:00
CodeGenCXX Re-commit r324991 "Fix for PR32992. Static const classes not exported." 2018-02-26 15:03:59 +00:00
CodeGenCoroutines Bring r325915 back. 2018-02-23 19:30:48 +00:00
CodeGenObjC Add a testcase for PR36268. 2018-02-08 01:17:26 +00:00
CodeGenObjCXX Bring r325915 back. 2018-02-23 19:30:48 +00:00
CodeGenOpenCL Bring r325915 back. 2018-02-23 19:30:48 +00:00
Coverage
CoverageMapping [Coverage] Handle break/continue outside of loop bodies 2018-02-16 07:59:43 +00:00
Driver [MinGW, CrossWindows] Allow passing -static together with -shared 2018-02-27 19:42:19 +00:00
FixIt [Parser][FixIt] Better diagnostics for "typedef" instead of "typename" typo 2018-02-08 14:37:58 +00:00
Format [clang-format] Fix bug where -dump-config failed on ObjC header 2018-01-29 17:36:43 +00:00
Frontend Recommit r324107 again. 2018-02-07 22:15:33 +00:00
Headers In stdbool.h, define bool, false, true only in gnu++98 2017-12-08 08:28:08 +00:00
Import [ASTImporter] Support LambdaExprs and improve template support 2018-01-26 11:36:54 +00:00
Index Clean up AMDGCN tests 2018-02-15 19:12:41 +00:00
Integration
Layout
Lexer [Lex] Fix handling numerical literals ending with ' and signed exponent. 2018-02-06 22:39:25 +00:00
Misc [OpenMP] Fix trailing space when printing pragmas, by Joel. E. Denny 2018-02-14 17:38:47 +00:00
Modules Make module use diagnostics refer to the top-level module 2018-02-24 06:54:09 +00:00
OpenMP [OPENMP] Allow multiple mappings for member expressions for pointers. 2018-02-27 17:42:00 +00:00
PCH Bring r325915 back. 2018-02-23 19:30:48 +00:00
Parser Allow the NS, CF, and ObjC attributes to be used with -fdouble-square-bracket-attributes. The syntactic locations for such attributes on ObjC constructs have been specifically chosen to follow the GNU attribute syntactic locations. 2018-02-12 13:38:25 +00:00
Preprocessor [RISCV] Enable __int128_t and __uint128_t through clang flag 2018-02-25 03:58:23 +00:00
Profile [PGO] Detect more structural changes with the stable hash 2017-11-14 23:56:53 +00:00
Refactor [refactor][extract] avoid extracting expressions from types in functions 2017-11-14 18:59:01 +00:00
Rewriter
Sema When diagnosing the arguments to alloc_size, report the failing argument using a 1-based index instead of a 0-based index for consistency. 2018-02-25 20:40:06 +00:00
SemaCUDA [CUDA] Allow external variables in separate compilation 2018-02-14 16:04:03 +00:00
SemaCXX [ExprConstant] Fix crash when initialize an indirect field with another field. 2018-02-23 23:59:20 +00:00
SemaObjC [Sema][ObjC] Process category attributes before checking protocol uses 2018-02-23 23:49:43 +00:00
SemaObjCXX Add support for attribute 'trivial_abi'. 2018-02-05 20:23:22 +00:00
SemaOpenCL [OpenCL] Add "cles_khr_int64" extension. 2018-01-26 11:48:46 +00:00
SemaTemplate Fix assert when template argument deduction's original call arg checking triggers class template instantiation. 2018-02-20 23:47:12 +00:00
TableGen
Templight [Templight] Template Instantiation Observer 2018-02-10 14:04:45 +00:00
Tooling Fix test clang-diff-json.cpp 2018-02-10 21:28:55 +00:00
Unit [lit] Set shlibpath_var on Solaris 2017-11-27 13:33:19 +00:00
VFS Avoid assumption that lit tests are writable. NFC 2018-01-08 15:05:01 +00:00
clang-rename [clang-rename] Fix and enable the failing TemplatedClassFunction test. 2017-10-25 08:25:25 +00:00
.clang-format
CMakeLists.txt [ThinLTO/CFI] Include TYPE_ID summaries into GLOBALVAL_SUMMARY_BLOCK 2018-02-14 22:41:15 +00:00
TestRunner.sh
cxx-sections.data
lit.cfg.py [debuginfo] Remove temporary FIXME. 2017-12-14 22:12:46 +00:00
lit.site.cfg.py.in [lit] Add host_cxx to lit config 2017-10-10 17:53:45 +00:00
make_test_dirs.pl