- Jul 03, 2008
-
-
Ted Kremenek authored
Update test case: simply running "clang -checker-simple" doesn't invoke the dead store checker anymore. We need "-warn-dead-stores" as well. llvm-svn: 53055
-
- Jul 02, 2008
-
-
Ted Kremenek authored
llvm-svn: 53024
-
Ted Kremenek authored
analyses. This potentially is the primordial origins of a Clang-equivalent "PassManager". The new AnalysisConsumer interface allows multiple analyses to be run from a single invocation of Clang. Migrated the logic of "-warn-dead-stores" and "-warn-uninit-values" to use the new AnalysisConsumer interface. The new interface results in a significant code reduction to incorporate an analysis into the Driver. Updated a test case to (correctly) acknowledge that it contains a dead store (this check wasn't being performed because it was previously masked by -warn-uninit-values). llvm-svn: 52996
-
Ted Kremenek authored
llvm-svn: 52993
-
- Jun 27, 2008
-
-
Ted Kremenek authored
llvm-svn: 52799
-
- Jun 25, 2008
-
-
Ted Kremenek authored
Tracked objects now have their type information tracked with them. Enhanced summaries for ObjC methods to include the type information of the receiver. Used the enhanced summaries to support the idiom that NSWindow owns itself (it sends a release message to itself upon close). Added some comments. Did some cleanups with the checker logic using operator overloading (reduced redundant code which I was concerned about being the source of bugs). llvm-svn: 52741
-
- Jun 23, 2008
-
-
Ted Kremenek authored
The CF retain/release checker now assumes that allocations do not fail. Eventually we will add a flag to the driver to enable allocation failures (documented as a FIXME). llvm-svn: 52632
-
- Jun 21, 2008
-
-
Ted Kremenek authored
llvm-svn: 52578
-
Ted Kremenek authored
llvm-svn: 52568
-
- Jun 20, 2008
-
-
Ted Kremenek authored
1) Check if a dead store appears as a subexpression. For such cases, we emit a verbose diagnostic so that users aren't confused. This addresses: <rdar://problem/5968508> checker gives misleading report for dead store in loop 2) Don't emit a dead store warning when assigning a null value to a pointer. This is a common form of defensive programming. We may wish to make this an option to the the checker one day. This addresses the feature request in the following email: http://lists.cs.uiuc.edu/pipermail/cfe-dev/2008-June/001978.html llvm-svn: 52555
-
- Jun 19, 2008
-
-
Ted Kremenek authored
have complex RValues yet, so this logic is only fully implemented when __imag__ and __real__ are used on non-complex types. llvm-svn: 52501
-
- Jun 16, 2008
-
-
Ted Kremenek authored
llvm-svn: 52362
-
Ted Kremenek authored
llvm-svn: 52359
-
Ted Kremenek authored
Move NSString.m test case from Analysis-Apple to Analysis. The test case now works on all platforms. llvm-svn: 52354
-
Ted Kremenek authored
llvm-svn: 52349
-
Ted Kremenek authored
llvm-svn: 52348
-
Ted Kremenek authored
llvm-svn: 52346
-
Ted Kremenek authored
llvm-svn: 52344
-
Ted Kremenek authored
Moved CFDate.m from test/Analysis-Apple to test/Analysis, and added the necessary declarations from Foundation.h to CFDate.m so that the test case can be exercised on all platforms. llvm-svn: 52343
-
- May 22, 2008
-
-
Ted Kremenek authored
llvm-svn: 51395
-
- May 21, 2008
-
-
Ted Kremenek authored
Fixed bug in the transfer function for dereferences: the loaded value from EvalLoad should bind to the UnaryOperator*, not its subexpression. Added test case to exercise this fix when checking for uses of uninitialized values. Patch by Zhongxing Xu! llvm-svn: 51377
-
- May 06, 2008
-
-
Ted Kremenek authored
llvm-svn: 50679
-
- May 05, 2008
-
-
Ted Kremenek authored
highlight the most nested subexpression that appears most responsible (giving the user better diagnostic feedback). Updated test cases to illustrate this feature. Implements: <rdar://problem/5880443> llvm-svn: 50647
-
- Apr 30, 2008
-
-
Ted Kremenek authored
llvm-svn: 50467
-
Ted Kremenek authored
llvm-svn: 50454
-
- Apr 24, 2008
-
-
Ted Kremenek authored
for the fix in r50178 (http://llvm.org/viewvc/llvm-project?rev=50178&view=rev). This fix was for <rdar://problem/5881148>. llvm-svn: 50220
-
- Apr 22, 2008
-
-
Ted Kremenek authored
llvm-svn: 50109
-
Ted Kremenek authored
Added "nonlval::LValAsInteger" to represent abstract LVals casted to integers, allowing us to track lvals when they are casted back to pointers. llvm-svn: 50108
-
Ted Kremenek authored
llvm-svn: 50084
-
Ted Kremenek authored
llvm-svn: 50073
-
Ted Kremenek authored
llvm-svn: 50072
-
- Apr 15, 2008
-
-
Ted Kremenek authored
llvm-svn: 49735
-
- Apr 14, 2008
-
-
Ted Kremenek authored
llvm-svn: 49647
-
- Apr 11, 2008
-
-
Ted Kremenek authored
code path in the clang driver. Renamed options --grsimple to -checker-simple and -check-cfref to -checker-cfref. llvm-svn: 49500
-
- Apr 02, 2008
-
-
Ted Kremenek authored
llvm-svn: 49095
-
- Mar 31, 2008
-
-
Ted Kremenek authored
of a stack variable. This is the path-sensitive version of a check that is already done during semantic analysis. llvm-svn: 48980
-
- Mar 22, 2008
-
-
Ted Kremenek authored
The effect is that if a variable is uninitialized along a branch (but initialized along another), at merge points it is considered uninitialized. Previously we had the opposite behavior. The new behavior is more conservative, and more in line with gcc's behavior. llvm-svn: 48689
-
- Mar 19, 2008
-
-
Ted Kremenek authored
llvm-svn: 48539
-
- Nov 30, 2007
-
-
Anders Carlsson authored
GCC has an extension where the left hand side of the ? : operator can be omitted. Handle this in a few more places. llvm-svn: 44462
-
- Nov 26, 2007
-
-
Bill Wendling authored
looking only for { and } instead of {{ and }}. Changed it to check for this explicitly. llvm-svn: 44326
-