- e3273e7 Allow offsets to be negative. Out-of-bound cases are checked elsewhere. We by Zhongxing Xu · 14 years ago
- e888233 Pull the region offset computation logic into a single method. by Zhongxing Xu · 14 years ago
- bc42c53 Changed GRExprEngine to pass down a reference to itself when checkers are doing postanalysis. This allows the checker to gather information about the state of the engine when it has finished. by Tom Care · 14 years ago
- 9b823e8 Add -cc1 option '-unoptimized-cfg' to toggle using a CFG (for static analysis) that doesn't prune CFG edges. by Ted Kremenek · 14 years ago
- 074ae35 Fix idempotent operations false positive caused by ivars not being invalidated in function by Ted Kremenek · 14 years ago
- 4204f07 Further adjustments to -Wglobal-constructors; works for references and direct by John McCall · 14 years ago
- fe97fa1 'Assumption &A' gets default initialized to 'Possible' if it doesn't exist; no need to two by Ted Kremenek · 14 years ago
- 7caf9b3 Improve flat store: MemRegion::getAsOffset() computes a region's offset within by Zhongxing Xu · 14 years ago
- dd0e490 After a lengthy design discussion, add support for "ownership attributes" for malloc/free checking. Patch by Andrew McGregor! by Ted Kremenek · 14 years ago
- 216b201 Uncomment unfinished work bailout in IdempotentOperationsChecker. by Tom Care · 14 years ago
- 167cc37 Use a LazyCompoundVal to handle initialization with a string literal, rather than copying each character. by Jordy Rose · 14 years ago
- 741b9be Teach GRExprEngine::VisitLValue() about FloatingLiteral, ImaginaryLiteral, and CharacterLiteral. Fixes an assertion failure reported in PR 7675. by Ted Kremenek · 14 years ago
- 281e9dc Augment RegionStore::BindStruct() to bind symbolicated struct values. This fixes a false path issue reported in <rdar://problem/8243408> and also spurs another cause where the idempotent operations checker fires. by Ted Kremenek · 14 years ago
- 17c571c Change SymbolManager::canSymbolicate() to return true for RecordTypes. by Ted Kremenek · 14 years ago
- c070843 Explicitly guard in BasicStore from storing to non-scalars. by Ted Kremenek · 14 years ago
- 0e82a93 Remove extraneous guards around the call to getConjuredSymbolVal(). These checks are already done within getConjuredSymbolVal() itself. by Ted Kremenek · 14 years ago
- 7bce3a1 Added some false positive checking to UnreachableCodeChecker by Tom Care · 14 years ago
- a9fbf5b Extracted out some useful common functions in IdempotentOperationChecker to their own CheckerHelpers file. by Tom Care · 14 years ago
- 3e5637f Finesse 'idempotent operations' analyzer issues to include the opcode of the binary operator for clearer error reporting. Also remove the 'Idempotent operation' prefix in messages; it's redundant since the bug type is the same. by Ted Kremenek · 14 years ago
- b698688 Put 'Idempotent operations' static analyzer issues in the 'Dead code' category. by Ted Kremenek · 14 years ago
- 5e04bdd Don't warn about unreachable code if the block starts with __builtin_unreachable(). by Jordy Rose · 14 years ago
- 19c5dd1 Groundwork for C string length tracking. Currently only handles the length of constant string literals, which is not too helpful, and only calls to strlen() are checked. by Jordy Rose · 14 years ago
- c4b5bd8 Added an path-sensitive unreachable code checker to the experimental analyzer checks. by Tom Care · 14 years ago
- 766c201 Add FILE* leak check to StreamChecker. Patch by Lei Zhang. by Zhongxing Xu · 14 years ago
- d5ef7b2 Change arg type. by Zhongxing Xu · 14 years ago
- 1f19124 Delete unnecessary const_cast. by Zhongxing Xu · 14 years ago
- b732791 AnalysisContext is not const. by Zhongxing Xu · 14 years ago
- 47dc37f This patch adds support for tmpfile in StreamChecker. Patch by Lei Zhang. by Zhongxing Xu · 14 years ago
- 2ce43c8 Make a bunch of new data structures for the new analysis by Zhongxing Xu · 14 years ago
- e492340 Move some methods inline. by Zhongxing Xu · 14 years ago
- 03509ae Constify all references to Stmt* and CFGBlock* in libChecker. by Zhongxing Xu · 14 years ago
- bc5495b Constify. by Zhongxing Xu · 14 years ago
- bf9c2b2 remove const_cast. by Zhongxing Xu · 14 years ago
- ce2bc7e3 constify. by Zhongxing Xu · 14 years ago
- 3992a50 Constify. by Zhongxing Xu · 14 years ago
- bc46c6b remove CallInliner.cpp. by Zhongxing Xu · 14 years ago
- 9843ba9 Add double close check to StreamChecker. Patch by Lei Zhang. by Zhongxing Xu · 14 years ago
- c6238d2 Reapply r108617. by Zhongxing Xu · 14 years ago
- 9638eef BUILD_ARCHIVE is the default for libraries, no need to set it. by Chris Lattner · 14 years ago
- ee30965 Revert r108617, it broke the build. by Benjamin Kramer · 14 years ago
- 69b8194 Prepare the analyzer for the callee in another translation unit: by Zhongxing Xu · 14 years ago
- cb07788 Fix '<rdar://problem/8202272> __imag passed non-complex should not crash' by removing a bogus assertion. by Ted Kremenek · 14 years ago
- 4532931 Fix APFloat assertion failure in IdempotentOperationChecker resulting in having by Ted Kremenek · 14 years ago
- df4ca42 Improved false positive rate for the idempotent operations checker and moved it into the default path-sensitive analysis options. by Tom Care · 14 years ago
- ec1b1cc Pass StringRefs by value. by Benjamin Kramer · 14 years ago
- e39a389 Introduce a new cast kind for an "lvalue bitcast", which handles by Douglas Gregor · 14 years ago
- d325ffb Cleanup in CStringChecker. Now properly bifurcates the state for zero/nonzero sizes. by Jordy Rose · 14 years ago
- ed8abf1 Reinstate the fix for PR7556. A silly use of isTrivial() was by Douglas Gregor · 14 years ago
- 8474567 Revert r107828 and r107827, the fix for PR7556, which seems to be by Douglas Gregor · 14 years ago
- 016a4a9 Rename CXXZeroInitValueExpr to CXXScalarValueInitExpr, to reflect its by Douglas Gregor · 14 years ago
- 082a625 Simplify code and remove comment that is no longer relevant. by Argyrios Kyrtzidis · 14 years ago
- 5f1bfc1 Remove Decl::getCompoundBody(). by Argyrios Kyrtzidis · 14 years ago
- 06a54a3 Introduce Decl::hasBody() and FunctionDecl::hasBody() and use them instead of getBody() when we are just checking the existence of a body, to avoid de-serialization of the body from PCH. by Argyrios Kyrtzidis · 14 years ago
- bc56d1f Add memcmp() and bcmp() to CStringChecker. These check for valid access to the buffer arguments and have a special-case for when the buffer arguments are known to be the same address, or when the size is zero. by Jordy Rose · 14 years ago
- a6b808c Cleanup on CStringChecker and its associated tests. Also check for null arguments...which are allowed if the access length is 0! by Jordy Rose · 14 years ago
- 7dbf818 Change explicit handling of impossible condition to call llvm_unreachable in IdempotentOperationChecker::PreVisitBinaryOperator. by Tom Care · 14 years ago
- 12080d4 Silence an annoying GCC warning about use of an uninitialized variable. Even by Chandler Carruth · 14 years ago
- 256565b Use 'llvm_unreachable' to mark impossible code paths so that GCC doesn't by Chandler Carruth · 14 years ago
- 0ea0e8b Fix casts in RegionStore to not always assume that bindings are only to SubRegions. Fixes assertion failure by Ted Kremenek · 14 years ago
- fa87d81 Implement dumpToStream() for NonStaticGlobalSpaceRegion and StaticGlobalSpaceRegion. by Ted Kremenek · 14 years ago
- b2242d1 Add comment noting VLASizeChecker's duty in defining a VLA's extent. by Jordy Rose · 14 years ago
- ccbf7ee Add a new path-sensitive checker for functions in <string.h>, for both null-terminated strings and memory blocks. Currently only checks memcpy(), memmove(), and bcopy(), but this is intended to be expanded soon. by Jordy Rose · 14 years ago
- 0a02e3e Sort CMake file. by Ted Kremenek · 14 years ago
- db2fa8a Added a path-sensitive idempotent operation checker (-analyzer-idempotent-operation). Finds idempotent and/or tautological operations in a path sensitive context, flagging operations that have no effect or a predictable effect. by Tom Care · 14 years ago
- e4f5d72 Add an assertion. by Zhongxing Xu · 14 years ago
- 5dd3af7 Remove the now-unused GRState::isEqual method. Instead of asking if an expression equals a certain value, use SValuator::EvalEQ and GRState::Assume to see if it can, must, or must not equal that value. by Jordy Rose · 14 years ago
- 61fb55c Improve NULL-checking for CFRetain/CFRelease. We now remember that the argument was non-NULL, and we report where the null assumption came from (like AttrNonNullChecker already did). by Jordy Rose · 14 years ago
- b7e3aab Support sizeof for VLA expressions (sizeof(someVLA)). sizeof(int[n]) still unimplemented. A VLA region's sizeof value matches its extent. by Jordy Rose · 14 years ago
- 52e04c5 Track extents for VLAs. by Jordy Rose · 14 years ago
- 32f2656 Add a new symbol type, SymbolExtent, to represent the extents of memory regions that may not be known at compile-time (such as those created by malloc). This replaces the old setExtent/getExtent API on Store, which used the GRState's GDM to store SVals. by Jordy Rose · 14 years ago
- dcee3ce Fix PR 7475 by enhancing the static analyzer to also invalidate bindings for non-static global variables by Ted Kremenek · 14 years ago
- 7dadf79 Add an ivar to SymbolReaper for the current statement, and then stop passing the current statement around everywhere. Preparation for symbolic extents. by Jordy Rose · 14 years ago
- c77a551 ExplodedGraph never uses ASTContext, remove it. by Zhongxing Xu · 14 years ago
- 78b6675 Correctly implement the CheckerVisit optimization introduced in r106884, but this time actually used the cached checker list when calling back to Checker visit methods. This reduces the analysis time for sqlite3.c by 8%. by Ted Kremenek · 14 years ago
- a274148 Pointers casted as integers still count as locations to SimpleSValuator, so don't crash if we do a funny thing like ((int)ptr)&1. Fixes PR7527. by Jordy Rose · 14 years ago
- e49f2ad Tweaker Checker::VisitEndAnalysis to have 'hasWorkRemaining' also by Ted Kremenek · 14 years ago
- d784d4d llvm::errs() is non-buffered, so it doesn't need to be flushed. by Dan Gohman · 14 years ago
- eac4a00 Pointer comparisons (and pointer-pointer subtraction). Basically filling in SimpleSValuator::EvalBinOpLL(). by Jordy Rose · 14 years ago
- 5ca129c Implicitly compare symbolic expressions to zero when they're being used as constraints. Part of PR7491. by Jordy Rose · 14 years ago
- 1cba3ea Allow '__extension__' to be analyzed in a lvalue context. by Ted Kremenek · 14 years ago
- 4d3b1af Relax assertion since non-pod C++ classes are not aggregates, but still can appear in this context. by Ted Kremenek · 14 years ago
- 4d912b2 When a constant size array is casted to another type, its length should be scaled as well. by Jordy Rose · 14 years ago
- 9e9595b Add "checker caching" to GRExprEngine::CheckerVisit to progressively build by Ted Kremenek · 14 years ago
- c4a1437 Fix -analyze-display-progress (once again), this time with an additional regression test. by Ted Kremenek · 14 years ago
- 7b05030 Change RegionStoreManager::Retrieve to infer the type of a symbolic region from the context when it is not already available. by Tom Care · 14 years ago
- 2b11fb2 Return null pointer instead of 'false' (fixes clang warning). by Ted Kremenek · 14 years ago
- 0c2e8c8 Add check for illegal whence argument of fseek. by Zhongxing Xu · 14 years ago
- ab42130 Should return stateNotNull. by Zhongxing Xu · 14 years ago
- 12d213d Let StreamChecker::CheckNullStream() return a GRState after successful check. by Zhongxing Xu · 14 years ago
- ccc263b Add 'VisitEndAnalysis' callback to Checker class. This callback is called by GRExprEngine by Ted Kremenek · 14 years ago
- 2470446 add comments. by Zhongxing Xu · 14 years ago
- 71f219a add comments. by Zhongxing Xu · 14 years ago
- 3f8612b Correctly construct an ElementRegion for alloca() + pointer arithmetic. Fixes analyzer by Ted Kremenek · 14 years ago
- 0c293ea Type Type::isRealFloatingType() that vectors are not floating-point by Douglas Gregor · 14 years ago
- 8ad9cbc Don't assert on C++ casts that are currently not handled by the static analyzer. by Ted Kremenek · 14 years ago
- c7de88b Add a bunch of stream APIs to SteamChecker. by Zhongxing Xu · 14 years ago
- b4954a4 When folding additive operations, convert the values to the same type. When assuming relationships, convert the integers to the same type as the symbol, at least for now. by Jordy Rose · 14 years ago
- 9a12685 If a nonnull argument evaluates to UnknownVal, don't warn (and don't crash). by Jordy Rose · 14 years ago
- 24ada87 Add braces to avoid an ambiguous else, fixing a GCC warning. by Benjamin Kramer · 14 years ago
- 43fdb7f Adds analyzer support for idempotent and tautological binary operations such as "a*0" and "a+0". This is not very powerful, but does make the analyzer look a little smarter than it actually is. by Jordy Rose · 14 years ago