0e2c34f92f00628d48968dfea096d36381f494cb |
|
23-Mar-2015 |
Stephen Hines <srhines@google.com> |
Update aosp/master clang for rebase to r230699. Change-Id: I6a546ab3d4ae37119eebb735e102cca4f80ab520
/external/clang/test/Analysis/stack-addr-ps.c
|
99c06be61f13c6bfe41586b59f5747d644f1b2ac |
|
18-Feb-2012 |
Ted Kremenek <kremenek@apple.com> |
Teach analyzer that blocks with no captures are globals. Fixes <rdar://problem/10348049>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@150896 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
a4c7a4314ffbe402091695874e93d9b0a79c8099 |
|
29-Jul-2011 |
Ted Kremenek <kremenek@apple.com> |
Really remove FlatStoreManager and BasicStoreManager, this time from the driver. Also remove associated tests. Sorry for the messy commits; this is the result of a botched Git merge. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136422 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
882998923889a2fcce9b49696506c499e22cf38f |
|
29-Jul-2011 |
Ted Kremenek <kremenek@apple.com> |
[analyzer] Overhaul how the static analyzer expects CFGs by forcing CFGs to be linearized only when used by the static analyzer. This required a rewrite of LiveVariables, and exposed a ton of subtle bugs. The motivation of this large change is to drastically simplify the logic in ExprEngine going forward. Some fallout is that the output of some BugReporterVisitors is not as accurate as before; those will need to be fixed over time. There is also some possible performance regression as RemoveDeadBindings will be called frequently; this can also be improved over time. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136419 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
c4d2c9074be6eb2091086eddd6c8f052f3b245c8 |
|
28-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] Remove '-analyzer-check-objc-mem' flag, the nominee for best misnomer award. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126676 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
103487088211c13ff3ae66f265130c56fb6be025 |
|
28-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] Migrate BuiltinFunctionChecker to CheckerV2. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
b8d545ca06761ce779eb14326af7b2dfeb1196fc |
|
25-Feb-2011 |
Ted Kremenek <kremenek@apple.com> |
Update test cases. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@126523 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
027a6abdd6cedc0b8203da72eed6d15c796dce9d |
|
15-Feb-2011 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
[analyzer] Use the new registration mechanism on some of the internal checks. These are: StackAddrLeakChecker ObjCAtSyncChecker UnixAPIChecker MacOSXAPIChecker The rest have/create implicit dependencies between checkers and need to be handled differently. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@125559 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
a8166156a6414ddd6a68514dc4f48e95d2259977 |
|
17-Jun-2010 |
Ted Kremenek <kremenek@apple.com> |
Tweak stack address checker to report multiple cases where globals may reference stack memory. Also refactor the diagnostics so that we print out the kind of stack memory returned. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@106210 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
565e465c6d0093f1bf8414b2cabdc842022385a9 |
|
05-Feb-2010 |
Ted Kremenek <kremenek@apple.com> |
Rename -cc1 option '-checker-cfref' to '-analyzer-check-objc-mem'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95348 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
7960ec30d794da5de6cd017c728e1151f7b101b9 |
|
09-Jan-2010 |
Ted Kremenek <kremenek@apple.com> |
Fix broken diagnostic when returning the address of a stack-allocated array. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93071 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
a5728872c7702ddd09537c95bc3cbd20e1f2fb09 |
|
15-Dec-2009 |
Daniel Dunbar <daniel@zuster.org> |
Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'. - This is designed to make it obvious that %clang_cc1 is a "test variable" which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it can be useful to redefine what gets run as 'clang -cc1' (for example, to set a default target). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91446 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
ef74f4c6dcd59b3af1de9d8f613c1caf3e6cb63d |
|
14-Dec-2009 |
Zhongxing Xu <xuzhongxing@gmail.com> |
Replace clang-cc with clang -cc1. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91272 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
a1c57168d55514e7c35930769dccdb631d90283d |
|
26-Nov-2009 |
Ted Kremenek <kremenek@apple.com> |
Improve diagnostics in ReturnStackAddressChecker for returning a stack-allocated block. Implements the rest of <rdar://problem/7387385>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89940 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
d8aefab741a788ba308468df0c66c9dafb4c8530 |
|
17-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Drop unnecessary #include. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89154 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
4fcfde4d5c8f25e40720972a5543d538a0dcb220 |
|
08-Nov-2009 |
Daniel Dunbar <daniel@zuster.org> |
Eliminate &&s in tests. - 'for i in $(find . -type f); do sed -e 's#\(RUN:.*[^ ]\) *&& *$#\1#g' $i | FileUpdate $i; done', for the curious. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86430 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
f7a0cf426eddae76e1a71dd2295631a2cf0560af |
|
29-Jul-2009 |
Ted Kremenek <kremenek@apple.com> |
Remove 'StoreManager::OldCastRegion()', TypedViewRegion (which only OldCastRegion used), and the associated command line option '-analyzer-store=old-basic-cast'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@77509 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
c037eac3bda3c636c961aab6377beea3242e81e4 |
|
10-Jul-2009 |
Ted Kremenek <kremenek@apple.com> |
Switch BasicStoreManager to use the new CastRegion implementation by default, and replace the 'clang-cc' option '-analyzer-store=basic-new-cast' with '-analyzer-store=basic-old-cast'. We'll keep the old CastRegion implementation around for a little while for regression testing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75209 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
e1cea75e70d76f55157749a7bcad319050492945 |
|
06-Jul-2009 |
Ted Kremenek <kremenek@apple.com> |
Make 'BasicStoreManager' + 'NewCastRegion' testable from the command line using '-analyzer-store=basic-new-cast'. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74865 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
dc147262b1ea0636cf8e7152f19303042dffdbed |
|
03-Jul-2009 |
Ted Kremenek <kremenek@apple.com> |
Enhance RegionStore to lazily symbolicate fields and array elements for structures passed-by-value as function arguments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74729 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
dac5bd4f15681062c2e11538d59197f9952c0703 |
|
02-Jul-2009 |
Ted Kremenek <kremenek@apple.com> |
Temporarily disable RegionStore for stack-addr-ps.c, as a new test case reveals a case where RegionStore doesn't create symbolic values for the fields of structs that are passed-by-value. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74662 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
6c07bdba93b095b66e2c8c82dd5ed458fa8285ea |
|
26-Jun-2009 |
Ted Kremenek <kremenek@apple.com> |
Introduce a new concept to the static analyzer: SValuator. GRTransferFuncs had the conflated role of both constructing SVals (symbolic expressions) as well as handling checker-specific logic. Now SValuator has the role of constructing SVals from expressions and GRTransferFuncs just handles checker-specific logic. The motivation is by separating these two concepts we will be able to much more easily create richer constraint-generating logic without coupling it to the main checker transfer function logic. We now have one implementation of SValuator: SimpleSValuator. SimpleSValuator is essentially the SVal-related logic that was in GRSimpleVals (which is removed in this patch). This includes the logic for EvalBinOp, EvalCast, etc. Because SValuator has a narrower role than the old GRTransferFuncs, the interfaces are much simpler, and so is the implementation of SimpleSValuator compared to GRSimpleVals. I also did a line-by-line review of SVal-related logic in GRSimpleVals and cleaned it up while moving it over to SimpleSValuator. As a consequence of removing GRSimpleVals, there is no longer a '-checker-simple' option. The '-checker-cfref' did everything that option did but also ran the retain/release checker. Of course a user may not always wish to run the retain/release checker, nor do we wish core analysis logic buried in the checker-specific logic. The next step is to refactor the logic in CFRefCount.cpp to separate out these pieces into the core analysis engine. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74229 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
759f25237864f3a3cc23eb01f0c0ce6edcc9342d |
|
16-May-2009 |
Eli Friedman <eli.friedman@gmail.com> |
PR3009: Get rid of bogus warning for scalar compound literals. This patch isn't quite ideal in that it eliminates the warning for constructs like "int a = {1};", where the braces are in fact redundant. However, that would have required a bunch of refactoring, and it's much less likely to cause confusion compared to redundant nested braces. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@71939 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
d7d5f0223bd30dfd618762349c6209dd1d5ea3e6 |
|
24-Mar-2009 |
Daniel Dunbar <daniel@zuster.org> |
Rename clang to clang-cc. Tests and drivers updated, still need to shuffle dirs. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67602 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
e1d77c32c13b3f42886406975bbda83cae770cba |
|
18-Feb-2009 |
Eli Friedman <eli.friedman@gmail.com> |
Fix test: config.h is not guaranteed to exist at the location in question. Use __builtin_alloca instead, which is guaranteed to mean the right thing without any includes. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64868 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
4b2d0dde8889a25b8e2a6c7dc67e69def28a49d1 |
|
17-Feb-2009 |
Daniel Dunbar <daniel@zuster.org> |
Eliminate dependency on where test is run from. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64837 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
61a3778c81c8d3e91f19479b300336f23ac991d4 |
|
17-Feb-2009 |
Ben Laurie <benl@google.com> |
Don't include alloca.h if it doesn't exist. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64771 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
be1fe1eb12a1cb91c8e3a9fcc2db4dfe989def6c |
|
17-Feb-2009 |
Ted Kremenek <kremenek@apple.com> |
Static Analyzer driver/options (partial) cleanup: - Move all analyzer options logic to AnalysisConsumer.cpp. - Unified specification of stores/constraints/output to be: -analyzer-output=... -analyzer-store=... -analyzer-constraints=... instead of -analyzer-range-constraints, -analyzer-store-basic, etc. - Updated drivers (ccc-analyzer, scan-builds, new ccc) to obey this new interface - Updated test cases to conform to new driver options git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64737 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
b78284a0ee1de9bb2006de6d220c0c925c28be6c |
|
22-Jan-2009 |
Ted Kremenek <kremenek@apple.com> |
This test case now passes with RegionStore. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62802 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
d427023c334fe03105d9359711a3df4d6f23b344 |
|
21-Jan-2009 |
Daniel Dunbar <daniel@zuster.org> |
Add -analyze action to run static analyzer, instead of inferring from individual checker options. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62634 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
6eddeb153415049c7b62de4b45385a759a6906c6 |
|
13-Dec-2008 |
Ted Kremenek <kremenek@apple.com> |
MemRegion: - Overhauled the notion of "types" for TypedRegions. We now distinguish between the "lvalue" of a region (via getLValueRegion()) and the "rvalue" of a region (va getRValueRegion()). Since a region represents a chunk of memory it has both, but we were conflating these concepts in some cases, leading to some insidious bugs. - Removed AnonPointeeType, partially because it is unused and because it doesn't have a clear notion of lvalue vs rvalue type. We can add it back once there is a need for it and we can resolve its role with these concepts. StoreManager: - Overhauled StoreManager::CastRegion. It expects an *lvalue* type for a region. This is actually what motivated the overhaul to the MemRegion type mechanism. It also no longer returns an SVal; we can just return a MemRegion*. - BasicStoreManager::CastRegion now overlays an "AnonTypedRegion" for pointer-pointer casts. This matches with the MemRegion changes. - Similar changes to RegionStore, except I've added a bunch of FIXMEs where it wasn't 100% clear where we should use TypedRegion::getRValueRegion() or TypedRegion::getLValueRegion(). AuditCFNumberCreate check: - Now blasts through AnonTypedRegions that may layer the original memory region, thus checking if the actually memory block is of the appropriate type. This change was needed to work with the changes to StoreManager::CastRegion. GRExprEngine::VisitCast: - Conform to the new interface of StoreManager::CastRegion. Tests: - None of the analysis tests fail now for using the "basic store". - Disabled the tests 'array-struct.c' and 'rdar-6442306-1.m' pending further testing and bug fixing. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60995 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
cfec1db63f9d4a1cda3f970d2cebeba8333a69ea |
|
13-Dec-2008 |
Ted Kremenek <kremenek@apple.com> |
Temporarily XFAIL these tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@60991 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
31483b48c75e2bd544964102f67809b46603c683 |
|
07-Nov-2008 |
Anders Carlsson <andersca@mac.com> |
include alloca.h instead of malloc.h. If this doesn't work for everyone we can just declare alloca directly in the file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58853 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
ff6ec3903630fa3b97477cf3474b55170eab0164 |
|
07-Nov-2008 |
Argyrios Kyrtzidis <akyrtzi@gmail.com> |
Bring in 'alloca' for the Analysis/stack-addr-ps.c test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58849 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
c979a9b066d998d73fb3a5ae293b7bbf78576e47 |
|
02-Nov-2008 |
Ted Kremenek <kremenek@apple.com> |
Add 'alloca' test case for return-of-stack-address checker. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58554 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
beb62c5836450dcdda53dca85399273acdf7104d |
|
31-Oct-2008 |
Ted Kremenek <kremenek@apple.com> |
Added missing 'expected-warning' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58481 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
fab6f220cdbcd7269d8f6e19988774efe0a49983 |
|
31-Oct-2008 |
Ted Kremenek <kremenek@apple.com> |
Enhance compound literal test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58480 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
64cc62d502eca5728de8d9aa431d7e76ce438467 |
|
31-Oct-2008 |
Ted Kremenek <kremenek@apple.com> |
Add missing "expected warning". Add compound literal with empty initializer (just to test the analyzer handles it). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58470 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
d4a07988c8ba6b214e8d93c3a4048357484ba771 |
|
30-Oct-2008 |
Ted Kremenek <kremenek@apple.com> |
Improve compound literal test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58447 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
c532f633a94f3d91b4435c8ed84dc3ef7bcf2afa |
|
27-Oct-2008 |
Ted Kremenek <kremenek@apple.com> |
Add 'expected-warning' for braces around scalar initializer git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58280 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
194aade5a0378afd1e669305fa3dc284eb4f5ec8 |
|
27-Oct-2008 |
Ted Kremenek <kremenek@apple.com> |
Added compound literal test case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@58279 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
22bda887aacd0e591978541a799aa43835652ec9 |
|
31-Jul-2008 |
Ted Kremenek <kremenek@apple.com> |
Enhanced path-sensitive return-of-stack-address check to print out the name of the variable whose address was returned. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@54253 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
d71ed26dd80cdfebb5bb49000cce538e6c9a90e3 |
|
11-Apr-2008 |
Ted Kremenek <kremenek@apple.com> |
Refactored all logic to run the GRSimpleVals and CFRef checker into a common code path in the clang driver. Renamed options --grsimple to -checker-simple and -check-cfref to -checker-cfref. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49500 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|
02737ed29d7fff2206f7c7ee958cdf0665e35542 |
|
31-Mar-2008 |
Ted Kremenek <kremenek@apple.com> |
Added path-sensitive check for return statements that return the address of a stack variable. This is the path-sensitive version of a check that is already done during semantic analysis. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48980 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/stack-addr-ps.c
|