llvm-project/clang/test/Analysis
Devin Coughlin f57f90dfd1 [analyzer] Add checker modeling potential C++ self-assignment
This checker checks copy and move assignment operators whether they are
protected against self-assignment. Since C++ core guidelines discourages
explicit checking for `&rhs==this` in general we take a different approach: in
top-frame analysis we branch the exploded graph for two cases, where &rhs==this
and &rhs!=this and let existing checkers (e.g. unix.Malloc) do the rest of the
work. It is important that we check all copy and move assignment operator in top
frame even if we checked them already since self-assignments may happen
undetected even in the same translation unit (e.g. using random indices for an
array what may or may not be the same).

This reapplies r275820 after fixing a string-lifetime issue discovered by the
bots.

A patch by Ádám Balogh!

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

llvm-svn: 276365
2016-07-21 23:42:31 +00:00
..
Inputs [analyzer] Suppress false positives in std::shared_ptr 2016-07-06 21:52:55 +00:00
diagnostics [analyzer] Suppress false positives in std::shared_ptr 2016-07-06 21:52:55 +00:00
engine Add a new -Wundefined-inline warning for inline functions which are used but not 2013-02-01 08:13:20 +00:00
inlining [analyzer] Suppress false positives in std::shared_ptr 2016-07-06 21:52:55 +00:00
objc Correct hyphenations in comments and assert messages 2013-12-05 04:47:09 +00:00
CFContainers-invalid.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
CFContainers.mm [analyzer] Remove ObjCContainersChecker size information when a CFMutableArrayRef escapes 2015-06-15 01:00:42 +00:00
CFDateGC.m
CFNumber.c
CFRetainRelease_NSAssertionHandler.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
CGColorSpace.c
CheckNSError.m
DeallocMissingRelease.m [analyzer] Teach ObjCDeallocChecker about XCTestCase 2016-06-22 17:03:10 +00:00
DeallocUseAfterFreeErrors.m [analyzer] Move ObjCSuperDeallocChecker out of the alpha package. 2016-03-02 22:01:03 +00:00
DynamicTypePropagation.m [analyzer] Move the ObjCGenericsChecker out of the alpha package. 2015-11-03 19:38:03 +00:00
MPIMock.h [analyzer] Add checker to verify the correct usage of the MPI API 2016-06-13 03:22:41 +00:00
Malloc+MismatchedDeallocator+NewDelete.cpp Detect uses of mismatching forms of 'new' and 'delete' 2015-05-18 19:59:11 +00:00
Malloc+MismatchedDeallocator_intersections.cpp [analyzer] This implements potential undefbehavior.ZeroAllocDereference checker. 2015-04-14 14:18:04 +00:00
Malloc+NewDelete_intersections.cpp [analyzer] Move the NewDeleteLeaks checker from CplusplusAlpha to Cplusplus package. 2014-10-21 12:41:36 +00:00
MemRegion.cpp [analyzer] Add checker to verify the correct usage of the MPI API 2016-06-13 03:22:41 +00:00
MismatchedDeallocator-checker-test.mm Detect uses of mismatching forms of 'new' and 'delete' 2015-05-18 19:59:11 +00:00
MismatchedDeallocator-path-notes.cpp [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
MissingDealloc.m [analyzer] Move ObjCDeallocChecker out of the alpha package. 2016-03-02 21:50:54 +00:00
NSContainers.m [static analyzer] Don't flag nil storage into NSMutableDictionary. 2015-11-11 00:49:22 +00:00
NSPanel.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
NSString.m [analyzer] Use BodyFarm-synthesized body even when actual body available. 2016-03-28 23:55:58 +00:00
NSWindow.m
NewDelete+MismatchedDeallocator_intersections.cpp [analyzer] Move the NewDeleteLeaks checker from CplusplusAlpha to Cplusplus package. 2014-10-21 12:41:36 +00:00
NewDelete-checker-test.cpp [analyzer] This implements potential undefbehavior.ZeroAllocDereference checker. 2015-04-14 14:18:04 +00:00
NewDelete-custom.cpp [analyzer] Move the NewDeleteLeaks checker from CplusplusAlpha to Cplusplus package. 2014-10-21 12:41:36 +00:00
NewDelete-intersections.mm [analyzer] This implements potential undefbehavior.ZeroAllocDereference checker. 2015-04-14 14:18:04 +00:00
NewDelete-path-notes.cpp [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
NewDelete-variadic.cpp [analyzer] Move the NewDeleteLeaks checker from CplusplusAlpha to Cplusplus package. 2014-10-21 12:41:36 +00:00
NewDeleteLeaks-PR18394.cpp [analyzer] Move the NewDeleteLeaks checker from CplusplusAlpha to Cplusplus package. 2014-10-21 12:41:36 +00:00
NewDeleteLeaks-PR19102.cpp [analyzer] Move the NewDeleteLeaks checker from CplusplusAlpha to Cplusplus package. 2014-10-21 12:41:36 +00:00
NoReturn.m [analyzer] Handle another Android assert function. 2015-12-30 00:08:59 +00:00
OSAtomic_mac.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
ObjCProperties.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
ObjCRetSigs.m [Static Analyzer] Some tests do not turn on core checkers. Running the analyzers without the core checkers is not supported. 2015-07-24 03:25:13 +00:00
PR2599.m Update tests touched by r249656 2015-10-08 06:31:22 +00:00
PR2978.m [analyzer] Move ObjCDeallocChecker out of the alpha package. 2016-03-02 21:50:54 +00:00
PR3991.m Split "incomplete implementation" warnings for ObjC into separate warnings. 2013-03-27 00:02:21 +00:00
PR7218.c
PR9741.cpp Remove duplicated -cc1 in tests 2013-12-08 18:06:52 +00:00
PR12905.c
PR24184.cpp [analyzer] Improve pointer arithmetic checker. 2016-02-23 12:34:39 +00:00
additive-folding-range-constraints.c [analyzer] Teach constraint managers about unsigned comparisons. 2013-03-23 01:21:33 +00:00
additive-folding.cpp [analyzer] Teach constraint managers about unsigned comparisons. 2013-03-23 01:21:33 +00:00
analyzeOneFunction.m
analyze_display_progress.cpp [analyzer] AnalysisConsumer: print fully-qualified function name while displaying progress 2016-02-03 13:35:33 +00:00
analyzer-checker-config.c [Static Analyzer] Basic per checker command line option validation. 2015-07-09 21:43:45 +00:00
analyzer-config.c Reapply r251621 "[Analyzer] Widening loops which do not exit" 2015-10-30 15:23:57 +00:00
analyzer-config.cpp Reapply r251621 "[Analyzer] Widening loops which do not exit" 2015-10-30 15:23:57 +00:00
analyzer-stats.c Revert "Don't require -re suffix on -verify directives with regexes." 2013-12-14 01:07:05 +00:00
array-struct-region.c [analyzer] Tighten up safety in the use of lazy bindings. 2013-02-21 01:34:51 +00:00
array-struct-region.cpp [analyzer] Add IdenticalExprChecker, to find copy-pasted code. 2013-11-08 01:15:39 +00:00
array-struct.c [analyzer] Relax an assertion in VisitLvalArraySubscriptExpr 2015-02-05 01:02:59 +00:00
atomics.c [analyzer] Add rudimentary handling of AtomicExpr. 2016-07-08 00:53:18 +00:00
auto-obj-dtors-cfg-output.cpp Reapply "Pretty Printer: Fix printing of conversion operator decls and calls." 2014-02-25 18:03:55 +00:00
base-init.cpp [analyzer] Replace "-analyzer-ipa" with "-analyzer-config ipa". 2013-01-24 23:15:30 +00:00
bitwise-ops.c [analyzer] Shitfing a constant value by its bit width is undefined. 2014-01-16 18:02:23 +00:00
blocks-no-inline.c [analyzer] Try constant-evaluation for all variables, not just globals. 2013-02-14 19:06:11 +00:00
blocks.m [analyzer] Find ObjC 'self' decl even when block captures local named 'self'. 2016-02-23 22:26:04 +00:00
blocks.mm [analyzer] Include block capture copy expressions in the CFG. 2015-11-25 22:35:37 +00:00
bool-assignment.c [analyzer] Fix an off-by-one in evalIntegralCast() 2016-01-18 10:17:16 +00:00
bstring.c [analyzer] Make CStringChecker correctly calculate return value of mempcpy 2014-10-03 21:48:54 +00:00
bstring.cpp [analyzer] Invalidate destination of std::copy() and std::copy_backward(). 2016-02-07 16:55:44 +00:00
bug_hash_test.cpp [analyzer] Fix IssueHash generation. 2015-12-01 09:00:41 +00:00
bug_hash_test.m [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
builtin-functions.cpp Teach the analyzer that __builtin_assume_aligned returns its first argument. 2014-09-09 21:42:16 +00:00
builtin_signbit.cpp Fix __builtin_signbit for ppcf128 type 2015-11-06 14:52:46 +00:00
call-invalidation.cpp [analyzer] Let TK_PreserveContents span across the whole base region. 2016-04-25 14:44:25 +00:00
casts.c PR16074, implement warnings to catch pointer to boolean true and pointer to 2014-02-26 02:36:06 +00:00
casts.cpp [analyzer] Fix test in previous commit to account for compiler warning. 2013-12-19 23:05:40 +00:00
casts.m [analyzer] Weaken assertion to account for pointer-to-integer casts. 2013-07-25 17:22:02 +00:00
cfg.cpp Fix some cases of incorrect handling of lifetime extended temporaries. 2014-07-30 08:34:42 +00:00
cfref_PR2519.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
cfref_rdar6080742.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
check-deserialization.cpp
checker-plugins.c Add a test for Static Analyzer checker plugins 2014-01-09 00:47:40 +00:00
chroot.c
comparison-implicit-casts.cpp
complex-init-list.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
complex.c
concrete-address.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
conditional-operator.cpp Switch %clang -cc1 tests to %clang_cc1 2013-10-28 23:47:09 +00:00
conditional-path-notes.c [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
const-method-call.cpp [analyzer] Fix assertion failure invalidating on const member function calls (PR25392). 2015-11-09 19:50:29 +00:00
constant-folding.c
coverage.c [analyzer] Shorten the malloc checker’s leak message 2013-04-06 00:41:36 +00:00
crash-trace.c Fix REQUIRES lines on tests from r228735. Thanks Kristof for pointing out the missing commas 2015-02-11 19:45:13 +00:00
cstring-syntax-cxx.cpp [analyzer] Fix a crash in SyntaxCString checker when given a custom strncat. 2013-04-10 22:06:29 +00:00
cstring-syntax.c
ctor.mm [analyzer] Improve test from r207486. 2014-04-29 17:08:17 +00:00
cxx-crashes.cpp
cxx-for-range-cfg.cpp
cxx-for-range.cpp [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
cxx-method-names.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
cxx11-crashes.cpp P0188R1: add support for standard [[fallthrough]] attribute. This is almost 2016-03-08 00:32:55 +00:00
dead-stores.c DeadStoresChecker: Don't warn about dead stores into volatile variables 2016-06-24 16:26:43 +00:00
dead-stores.cpp [analyzer] Skip checking blocks in dependent contexts. 2015-11-18 22:46:52 +00:00
dead-stores.m Update mailing list references to lists.llvm.org 2015-08-05 03:55:23 +00:00
debug-CallGraph.c [CallGraph] Make sure the edges are not missed due to re-declarations 2014-12-17 00:34:07 +00:00
default-analyze.m Objective-C. After providing a fix-it for a 2013-12-18 21:04:43 +00:00
default-diagnostic-visitors.c [analyzer] Use 'MemRegion::printPretty()' instead of assuming the region is a VarRegion. 2013-02-26 19:44:38 +00:00
delayed-template-parsing-crash.cpp Do not crash when static analysis encounters a FunctionDecl that has a delayed template parse of its body. 2015-08-20 21:27:35 +00:00
delegates.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
derived-to-base.cpp Fix static analyzer crash when casting from an incomplete type 2013-06-20 07:45:01 +00:00
designated-initializer.c Implementing C99 partial re-initialization behavior (DR-253) 2015-06-10 00:27:52 +00:00
disable-all-checks.c Fixup for r216763. Add a driver test. 2014-08-29 21:51:22 +00:00
div-zero.cpp
division-by-zero.c Fix a crash by division by zero in analyzer 2015-06-25 14:06:02 +00:00
domtest.c Correct test inovocations to use %clang_cc1 rather than direct invocation (so that it can have additional options set when trying to debug issues causing regressions). 2012-10-25 13:56:30 +00:00
dtor-cxx11.cpp [analyzer] Remove incorrect workaround for unimplemented temporary destructors. 2014-04-01 16:39:59 +00:00
dtor.cpp Analyzer: Teach analyzer how to handle TypeTraitExpr 2015-09-22 19:33:15 +00:00
dtors-in-dtor-cfg-output.cpp Remove useless 'XPASS: *' from tests 2013-01-25 22:20:24 +00:00
dynamic-cast.cpp Fix a tranche of comment, test and doc typos 2013-12-05 16:25:25 +00:00
dynamic_type_check.m [Static Analyzer] Fixed a false positive case in DynamicTypeChecker when dealing with forward declarations. 2015-09-18 23:38:57 +00:00
edges-new.mm [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
elementtype.c
enum.cpp [analyzer] Replace isIntegerType() with isIntegerOrEnumerationType(). 2013-04-09 02:30:33 +00:00
exceptions.mm
exercise-ps.c Consolidate header inclusion diagnostics 2014-07-11 20:53:51 +00:00
explain-svals.cpp [analyzer] Provide .def-files and visitors for SVal/SymExpr/MemRegion, v2. 2016-01-15 15:22:05 +00:00
fields.c [analyzer] Improve pointer arithmetic checker. 2016-02-23 12:34:39 +00:00
free.c [analyzer] Individual configuration options can be specified for checkers. 2015-03-04 17:59:34 +00:00
func.c [analyzer] Add new debug helper clang_analyzer_warnIfReached. 2013-10-03 16:57:03 +00:00
generics.m [analyzer] Fix crash in ObjCGenericsChecker 2016-05-11 20:28:41 +00:00
global-region-invalidation.c [analyzer] Re-enable using global regions as a symbolic base. 2013-04-15 20:39:45 +00:00
global_region_invalidation.mm [analyzer] Re-enable using global regions as a symbolic base. 2013-04-15 20:39:45 +00:00
html-diags-multifile.c Fix test that wasn't testing anything 2013-11-05 12:45:37 +00:00
html-diags-multifile.h
html-diags.c Remove shell requirements from tests that use 'cd' 2015-03-02 22:42:58 +00:00
identical-expressions.cpp [Static Analyzer] Warn when inner and outer conditions are identical. The inner condition is always true. 2015-08-10 07:18:29 +00:00
index-type.c [analyzer] Use a wider integer type for an array index. 2016-02-01 09:29:17 +00:00
initializer.cpp [analyzer] Better detect when C++ object was constructed into existing region. 2015-12-17 00:28:33 +00:00
initializers-cfg-output.cpp Make Sema::getPrintingPolicy less ridiculously expensive. This used to perform 2016-05-19 01:39:10 +00:00
inline-not-supported.c
inline-plist.c [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
inline-unique-reports.c [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
inline.c Fix a crash in the static analyzer (bug #16307) 2013-06-19 08:19:56 +00:00
inline.cpp [analyzer] Improve modeling of static initializers. 2015-11-19 01:25:28 +00:00
inline2.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
inline3.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
inline4.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
ivars.m
keychainAPI-diagnostic-visitor.m
keychainAPI.m [analyzer] Fix a false positive in Secure Keychain API checker. 2013-01-07 19:13:00 +00:00
kmalloc-linux.c [analyzer] Handle the M_ZERO and __GFP_ZERO flags in kernel mallocs. 2014-03-26 17:05:46 +00:00
lambda-notes.cpp [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
lambdas-generalized-capture.cpp [analyzer] Add tests for generalized lambda capture (C++14). NFC. 2015-11-26 00:11:23 +00:00
lambdas.cpp [analyzer] Fix crash when lambda captures a variable-length array. 2015-12-07 23:01:53 +00:00
lambdas.mm [analyzer] Find ObjC 'self' decl even when block captures local named 'self'. 2016-02-23 22:26:04 +00:00
lit.local.cfg Make the information about disabled ARCMT/Rewriter/StaticAnalyzer available 2013-08-27 19:27:35 +00:00
live-variables.cpp Revert "[analyzer] Refactor conditional expression evaluating code" 2013-12-06 18:56:29 +00:00
live-variables.m Revert "[analyzer] Refactor conditional expression evaluating code" 2013-12-06 18:56:29 +00:00
localization-aggressive.m [analyzer] Add 'optin' checker package and move localizability checkers into it. 2015-11-04 21:33:41 +00:00
localization.m [analyzer] Add path note for localizability checker. 2016-04-28 19:44:40 +00:00
logical-ops.c [Sema]. Warn when logical expression is a pointer 2014-11-14 17:12:50 +00:00
loop-widening.c Reapply r251621 "[Analyzer] Widening loops which do not exit" 2015-10-30 15:23:57 +00:00
lvalue.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
malloc-annotations.c [analyzer] Individual configuration options can be specified for checkers. 2015-03-04 17:59:34 +00:00
malloc-interprocedural.c [analyzer] Shorten the malloc checker’s leak message 2013-04-06 00:41:36 +00:00
malloc-overflow.c [analyzer] Discard malloc-overflow bug-report when a known size is malloc'ed. 2015-09-23 23:27:55 +00:00
malloc-overflow.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
malloc-overflow2.c clang/test/Analysis/malloc-overflow2.c: Appease 32-bit targets. 2015-09-24 02:49:00 +00:00
malloc-plist.c [analyzer] Update RegionStoreManager::getBinding to handle BlockDataRegions 2015-11-05 18:56:42 +00:00
malloc-protoype.c [analyzer] Don't crash if malloc() has an unexpected function prototype. 2014-09-05 16:33:51 +00:00
malloc-sizeof.c
malloc-sizeof.cpp [analyzer] Tweak MallocSizeOfChecker to not warn when using sizeof(void*) to allocate a bunch of any pointer type. 2014-10-19 07:30:55 +00:00
malloc-three-arg.c [analyzer] Handle the M_ZERO and __GFP_ZERO flags in kernel mallocs. 2014-03-26 17:05:46 +00:00
malloc.c [analyzer] Let TK_PreserveContents span across the whole base region. 2016-04-25 14:44:25 +00:00
malloc.cpp [analyzer] Consolidate constant evaluation logic in SValBuilder. 2013-05-01 23:10:44 +00:00
malloc.m [analyzer] Pointers escape into +[NSValue valueWithPointer:]... 2014-01-07 21:39:48 +00:00
malloc.mm [analyzer] Switched to checkPreCall interface for detecting usage after free. 2013-04-10 22:21:41 +00:00
member-expr.cpp [analyzer] Don't assert when combining using .* on a temporary. 2014-04-29 17:08:12 +00:00
method-arg-decay.m Change 'method X in protocol not implemented' warning to include the name of the protocol. 2013-12-13 05:58:51 +00:00
method-call-intra-p.cpp Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
method-call-path-notes.cpp [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
method-call.cpp [analyzer] Replace "-analyzer-ipa" with "-analyzer-config ipa". 2013-01-24 23:15:30 +00:00
misc-ps-64.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
misc-ps-arm.m Add error checking to reject neon_vector_type attribute on targets without NEON. 2013-09-16 18:07:35 +00:00
misc-ps-cxx0x.cpp
misc-ps-eager-assume.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
misc-ps-ranges.m
misc-ps-region-store-i386.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
misc-ps-region-store-x86_64.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
misc-ps-region-store.cpp Add -Wtautological-undefined-compare and -Wundefined-bool-conversion warnings 2014-06-06 21:39:26 +00:00
misc-ps-region-store.m Fix testcase for case. 2014-05-20 17:15:31 +00:00
misc-ps-region-store.mm Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
misc-ps.c [analyzer] Accept references to variables declared "extern void" (C only). 2013-05-29 20:50:34 +00:00
misc-ps.m [analyzer] Check for negative values used as the size of a C variable-length array. 2014-08-12 16:44:22 +00:00
model-file.cpp [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
mpichecker.cpp [analyzer] Add checker to verify the correct usage of the MPI API 2016-06-13 03:22:41 +00:00
mpicheckernotes.cpp [analyzer] Add checker to verify the correct usage of the MPI API 2016-06-13 03:22:41 +00:00
new-with-exceptions.cpp [analyzer] Assume new returns non-null even under -fno-exceptions 2013-08-28 08:04:08 +00:00
new.cpp Correct hyphenations in comments and assert messages 2013-12-05 04:47:09 +00:00
nil-receiver-undefined-larger-than-voidptr-ret-region.m
nil-receiver-undefined-larger-than-voidptr-ret.m Fix FileCheck --check-prefix lines. 2013-08-12 12:51:05 +00:00
no-exit-cfg.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
no-outofbounds.c [analyzer] Teach CastSizeChecker about flexible array members. 2014-02-18 17:06:30 +00:00
no-unreachable-dtors.cpp CFG: Delay creating Dtors for CompoundStmts which end in ReturnStmt 2015-11-14 00:36:50 +00:00
nonnull.m [analyzer] Check all 'nonnull' attributes, not just the first one. 2014-10-13 19:38:02 +00:00
null-deref-path-notes.m [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
null-deref-ps-region.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
null-deref-ps.c [analyzer] Don't report null dereferences on address_space annotated memory 2016-01-06 00:32:49 +00:00
nullability-no-arc.mm [analyzer] Nullability: Don't warn along paths where null returned from non-null. 2016-03-28 20:30:25 +00:00
nullability.mm [analyzer] Nullability: Suppress diagnostic on bind with cast. 2016-04-13 17:59:24 +00:00
nullability_nullonly.mm [analyzer] Nullability: add option to not report on calls to system headers. 2016-03-05 01:32:43 +00:00
nullptr.cpp [analyzer] Don't report null dereferences on address_space annotated memory 2016-01-06 00:32:49 +00:00
objc-arc.m [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
objc-bool.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
objc-boxing.m [Sema]. Warn when logical expression is a pointer 2014-11-14 17:12:50 +00:00
objc-for.m Correct hyphenations in comments and assert messages 2013-12-05 04:47:09 +00:00
objc-message.m [analyzer] Skip Pre/Post handlers for ObjC calls when receiver is nil. 2015-09-15 01:13:53 +00:00
objc-method-coverage.m Partly revert "Move clang tests that depend on llvm/ADT/Statistic.h to a subdir". 2013-03-11 17:48:03 +00:00
objc-properties.m Correct hyphenations in comments and assert messages 2013-12-05 04:47:09 +00:00
objc-radar17039661.m [analyzer] Look for allocation site in the parent frames as well as the current one. 2015-02-05 01:02:53 +00:00
objc-string.mm A new conversion warning for when an Objective-C object literal is implicitly 2014-01-28 23:40:26 +00:00
objc-subscript.m [analyzer] RetainCountChecker: Clean up path notes for autorelease. 2013-04-23 01:42:25 +00:00
objc_invalidation.m Objective-C [qoi]. If property is going to be implemented 2014-08-29 20:29:31 +00:00
operator-calls.cpp Sema: avoid reuse of Exprs when synthesizing operator= 2013-08-30 08:52:28 +00:00
out-of-bounds.c [analyzer] Accept references to variables declared "extern void" (C only). 2013-05-29 20:50:34 +00:00
outofbound-notwork.c
outofbound.c [analyzer] Individual configuration options can be specified for checkers. 2015-03-04 17:59:34 +00:00
override-werror.c
padding_c.c clang/test/Analysis/padding_c.c: Suppress a test incompatible to i686-linux. 2015-12-15 09:37:01 +00:00
padding_cpp.cpp [PATCH] Adding checker to detect excess padding in records 2015-12-14 21:38:59 +00:00
padding_message.cpp [PATCH] Adding checker to detect excess padding in records 2015-12-14 21:38:59 +00:00
plist-html-macros.c
plist-macros.cpp [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
plist-output-alternate.m [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
plist-output.m [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
pointer-to-member.cpp [analyzer] Pointers-to-members are (currently) Locs, not NonLocs. 2013-07-02 16:50:24 +00:00
pr4209.m Split "incomplete implementation" warnings for ObjC into separate warnings. 2013-03-27 00:02:21 +00:00
pr22954.c [analyzer] When memcpy'ing into a fixed-size array, do not invalidate entire region. 2015-09-24 16:52:56 +00:00
pr_2542_rdar_6793404.m
pr_4164.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
properties.m [analyzer] Add tests for Objective-C class properties 2016-05-06 18:24:50 +00:00
properties.mm [analyzer] Tighten up sanity checks on Objective-C property getter synthesis. 2014-01-23 03:59:10 +00:00
pthreadlock.c [analyzer] Fix pthread lock tests so that the API comes from a system header. 2014-09-10 16:17:42 +00:00
ptr-arith.c [analyzer] Improve pointer arithmetic checker. 2016-02-23 12:34:39 +00:00
ptr-arith.cpp [analyzer] Improve pointer arithmetic checker. 2016-02-23 12:34:39 +00:00
qt_malloc.cpp [analyzer] Fix false warning about memory leak for QApplication::postEvent 2016-01-06 00:32:56 +00:00
range_casts.c [analyzer] Fix RangeConstraintManager's pinning of single value ranges. 2016-01-12 10:40:45 +00:00
rdar-6442306-1.m [analyzer] Improve pointer arithmetic checker. 2016-02-23 12:34:39 +00:00
rdar-6540084.m [Static Analyzer] Some tests do not turn on core checkers. Running the analyzers without the core checkers is not supported. 2015-07-24 03:25:13 +00:00
rdar-6541136-region.c
rdar-6562655.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
rdar-6600344-nil-receiver-undefined-struct-ret.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
rdar-7168531.m
redefined_system.c [analyzer] Do not crash in the KeychainAPI checker on user defined 'free()'. 2015-02-05 01:02:56 +00:00
refcnt_naming.m [analyzer] Replace "-analyzer-ipa" with "-analyzer-config ipa". 2013-01-24 23:15:30 +00:00
reference.cpp Add -Wtautological-undefined-compare and -Wundefined-bool-conversion warnings 2014-06-06 21:39:26 +00:00
reference.mm [analyzer] Warn when nil receiver results in forming null reference 2013-04-03 19:28:19 +00:00
region-1.m Objective-C. Diagose use of undefined protocols 2014-03-11 17:10:51 +00:00
region-store.c [analyzer] Set concrete offset bindings to UnknownVal when processing symbolic offset binding, even if no bindings are present. 2013-03-25 20:43:24 +00:00
region-store.cpp [analyzer] Do not believe lazy binding when symbolic region types do not match 2013-03-19 22:38:09 +00:00
reinterpret-cast.cpp [analyzer] Fix MemRegion crash casting non-struct to derived struct (PR25426). 2015-12-05 00:22:36 +00:00
retain-release-cache-out.m [analyzer] Don't create new PostStmt nodes if we don't have to. 2014-06-18 19:23:30 +00:00
retain-release-cf-audited.m [analyzer] Don't let cf_audited_transfer override CFRetain semantics. 2013-03-04 23:21:32 +00:00
retain-release-gc-only.m Update tests touched by r249656 2015-10-08 06:31:22 +00:00
retain-release-inline.m [analyzer] Better test for r178063. 2013-03-26 23:58:52 +00:00
retain-release-path-notes-gc.m [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
retain-release-path-notes.m [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
retain-release-region-store.m Update tests touched by r249656 2015-10-08 06:31:22 +00:00
retain-release.m Replace __double_underscored type nullability qualifiers with _Uppercase_underscored 2015-06-24 22:02:08 +00:00
retain-release.mm [analyzer] Fix a crash in RetainCountChecker - we should not rely on CallEnter::getCallExpr to return non-NULL 2013-04-25 00:41:32 +00:00
return-ptr-range.cpp [analyzer] Fix symbolic element index lifetime. 2015-12-10 09:28:06 +00:00
security-syntax-checks-no-emit.c Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
security-syntax-checks.m Enable security checks for arc4random() on CloudABI as well. 2015-03-11 08:48:55 +00:00
self-assign.cpp [analyzer] Add checker modeling potential C++ self-assignment 2016-07-21 23:42:31 +00:00
self-init.m Replace -fobjc-default-synthesize-properties with disable-objc-default-synthesize-properties. 2013-09-27 20:21:48 +00:00
shallow-mode.m [analyzer] Add "-analyzer-config mode=[deep|shallow] ". 2013-01-24 23:15:34 +00:00
simple-stream-checks.c [analyzer] Indirect invalidation counts as an escape for leak checkers. 2013-05-10 17:07:16 +00:00
sizeofpointer.c
stack-addr-ps.c Register parameters have local storage. 2015-02-04 07:15:12 +00:00
stack-addr-ps.cpp Add -Wtautological-undefined-compare and -Wundefined-bool-conversion warnings 2014-06-06 21:39:26 +00:00
stack-block-returned.cpp
stackaddrleak.c [Analyzer] Correct stack address escape diagnostic 2016-05-26 14:02:17 +00:00
static_local.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
stats.c Partly revert "Move clang tests that depend on llvm/ADT/Statistic.h to a subdir". 2013-03-11 17:48:03 +00:00
stream.c
string-fail.c
string.c [analyzer] Fix for PR23790 : constrain return value of strcmp() rather than returning a concrete value. 2016-05-19 23:03:49 +00:00
superclass.m [analyzer] Don't issue alarm in ObjCSuperCallChecker for the super class itself. 2015-08-08 01:31:51 +00:00
svalbuilder-logic.c Re-apply "[analyzer] Model casts to bool differently from other numbers." 2013-05-01 18:19:59 +00:00
switch-case.c [analyzer] Create one state for a range switch case instead of multiple. 2015-09-22 20:31:19 +00:00
symbol-reaper.c [analyzer] Fix symbolic element index lifetime. 2015-12-10 09:28:06 +00:00
taint-generic.c [analyzer] Teach ConstraintManager to ignore NonLoc <> NonLoc comparisons. 2013-03-24 20:25:22 +00:00
taint-tester.c [analyzer] Tests: move system functions into system header simulator files. 2013-04-15 20:39:37 +00:00
taint-tester.cpp [analyzer] Treat the rvalue of a forward-declared struct as Unknown. 2013-08-30 19:17:26 +00:00
taint-tester.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
temp-obj-dtors-cfg-output.cpp Make Sema::getPrintingPolicy less ridiculously expensive. This used to perform 2016-05-19 01:39:10 +00:00
templates.cpp [analyzer] Don't crash if a block doesn't have a type signature. 2013-05-22 18:09:44 +00:00
temporaries.cpp [Static Analyzer] Lambda support. 2015-09-11 16:55:01 +00:00
test-after-div-zero.c [analyzer] Check for code testing a variable for 0 after using it as a denominator. 2014-07-10 16:10:52 +00:00
test-include-cpp.cpp [static analyzer] Analyzer is skipping forward declared C/C++ functions 2015-06-26 17:42:58 +00:00
test-include-cpp.h [static analyzer] Analyzer is skipping forward declared C/C++ functions 2015-06-26 17:42:58 +00:00
test-include.c [static analyzer] Analyzer is skipping forward declared C/C++ functions 2015-06-26 17:42:58 +00:00
test-include.h [static analyzer] Analyzer is skipping forward declared C/C++ functions 2015-06-26 17:42:58 +00:00
test-objc-non-nil-return-value-checker.m
test-variably-modified-types.c
traversal-algorithm.mm
traversal-begin-end-function.c [analyzer] Add checker callback for beginning of function. 2016-02-19 01:35:10 +00:00
traversal-path-unification.c [analyzer] Add checker callback for beginning of function. 2016-02-19 01:35:10 +00:00
ubigraph-viz.cpp Analyzer: Fix a crasher in UbigraphViz 2015-09-18 21:54:47 +00:00
undef-buffers.c [analyzer] Individual configuration options can be specified for checkers. 2015-03-04 17:59:34 +00:00
uninit-const.c [analyzer] Warn when passing pointers to const but uninitialized memory. 2014-03-13 17:55:39 +00:00
uninit-const.cpp [analyzer] Warn when passing pointers to const but uninitialized memory. 2014-03-13 17:55:39 +00:00
uninit-msg-expr.m
uninit-ps-rdar6145427.m
uninit-sometimes.cpp PR16054: Slight strengthening for -Wsometimes-uninitialized: if we use a 2013-09-12 18:49:10 +00:00
uninit-vals-ps-region.m [analyzer] Remove IdempotentOperations checker. 2014-01-04 05:52:11 +00:00
uninit-vals-ps.c [analyzer] Don't warn for returning void expressions in void blocks. 2013-04-17 18:03:48 +00:00
uninit-vals.m [analyzer] "Force" LazyCompoundVals on bind when they are simple enough. 2013-04-18 16:33:46 +00:00
unions-region.m Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
unions.cpp [analyzer] Generate a LazyCompoundVal when loading from a union-typed region. 2013-10-23 20:08:55 +00:00
unix-api.c [analyzer] UnixAPI: Check that the third argument to open(2) (if present) is an integer. 2014-08-20 16:58:09 +00:00
unix-fns.c [analyzer] Bug identification 2015-10-22 11:53:04 +00:00
unreachable-code-path.c [analyzer] Don't run unreachable code checker on inlined functions. 2013-08-19 17:03:12 +00:00
unused-ivars.m
variadic-method-types.m
vfork.c [analyzer] Add VforkChecker to find unsafe code in vforked process. 2015-11-06 11:16:31 +00:00
virtualcall.cpp [analyzer] Don't warn on virtual calls in ctors to final methods. 2014-08-21 10:25:03 +00:00
virtualcall.h
vla.c [analyzer] Check for negative values used as the size of a C variable-length array. 2014-08-12 16:44:22 +00:00
weak-functions.c PR16074, implement warnings to catch pointer to boolean true and pointer to 2014-02-26 02:36:06 +00:00