| Commit message (Collapse) | Author | Age | Files | Lines | ||
|---|---|---|---|---|---|---|
| ... | ||||||
| * | When stripping element regions for invalidating region values, treat ↵ | Ted Kremenek | 2009-05-11 | 1 | -4/+7 | |
| | | | | | | | FieldRegions and ObjCIvarRegions as "base" regions in addition to VarRegions. llvm-svn: 71488 | |||||
| * | Fix regression reported in <rdar://problem/6866843>. The analyzer should ↵ | Ted Kremenek | 2009-05-11 | 1 | -2/+2 | |
| | | | | | | | extend the lifetime of an object stored to a container. llvm-svn: 71452 | |||||
| * | Fix a bug found by Thomas Clement where 'return [[[NSString alloc] init] ↵ | Ted Kremenek | 2009-05-11 | 1 | -2/+10 | |
| | | | | | | | autorelease]' would emit a false 'too many overreleases' error. llvm-svn: 71432 | |||||
| * | TypedRegion is a too general assumption. Usually we only want to invalidate | Zhongxing Xu | 2009-05-11 | 1 | -3/+3 | |
| | | | | | | | the VarRegion as a super region of an ElementRegion. llvm-svn: 71431 | |||||
| * | Add special warning about returning a retained object where a GC'ed object ↵ | Ted Kremenek | 2009-05-10 | 1 | -5/+7 | |
| | | | | | | | is expected. llvm-svn: 71397 | |||||
| * | retain/release checker: Flag a warning for non-owned objects returned | Ted Kremenek | 2009-05-10 | 1 | -13/+85 | |
| | | | | | | | | | where an owned one is expected. Also add preliminary checking for returning a positive retain count object in GC mode where an owned GC object is expected. llvm-svn: 71388 | |||||
| * | analyzer: | Ted Kremenek | 2009-05-10 | 1 | -33/+48 | |
| | | | | | | | | | - Improve -autorelease diagnostics. - Improve VLA diagnostics. - Use "short description" for bug when outputting to TextDiagnostics llvm-svn: 71383 | |||||
| * | As discussed with Ted, rename TypedRegion::getObjectType() to | Zhongxing Xu | 2009-05-09 | 1 | -1/+1 | |
| | | | | | | | TypedRegion::getValueType(). llvm-svn: 71321 | |||||
| * | Add back analyzer support for ns_returns_retained and cf_returns_retained. | Ted Kremenek | 2009-05-09 | 1 | -1/+51 | |
| | | | | | llvm-svn: 71309 | |||||
| * | It lives! The retain/release checker now tracks objects that are sent | Ted Kremenek | 2009-05-09 | 1 | -4/+5 | |
| | | | | | | | 'autorelease'. llvm-svn: 71307 | |||||
| * | rename: MemRegion: | Zhongxing Xu | 2009-05-09 | 1 | -1/+1 | |
| | | | | | | | | | | RValueType => ObjectType LValueType => LocationType No functionality change. llvm-svn: 71304 | |||||
| * | More hacking on autorelease errors. We now can emit basic errors (disabled for | Ted Kremenek | 2009-05-09 | 1 | -3/+14 | |
| | | | | | | | now until ready). llvm-svn: 71303 | |||||
| * | Put most of the boilerplate logic in place for reporting autorelease errors. | Ted Kremenek | 2009-05-09 | 1 | -19/+82 | |
| | | | | | llvm-svn: 71301 | |||||
| * | retain/release checker: Add stub for HandleAutoreleaseCounts. | Ted Kremenek | 2009-05-08 | 1 | -9/+56 | |
| | | | | | llvm-svn: 71290 | |||||
| * | retain/release checker: Refactor error-reporting code in EvalDeadSymbols and | Ted Kremenek | 2009-05-08 | 1 | -108/+98 | |
| | | | | | | | EvalEndPath. This sets the stage for handling autorelease counts. llvm-svn: 71283 | |||||
| * | retain checker: Track the number of times a tracked object is sent | Ted Kremenek | 2009-05-08 | 1 | -15/+37 | |
| | | | | | | | 'autorelease'. This isn't used yet to flag errors. llvm-svn: 71244 | |||||
| * | Remove experimental ownership attributes from Clang. | Ted Kremenek | 2009-05-08 | 1 | -93/+0 | |
| | | | | | llvm-svn: 71216 | |||||
| * | Minor code cleanup in retain/release checker in preparation for some | Ted Kremenek | 2009-05-07 | 1 | -22/+14 | |
| | | | | | | | | other changes. Instead of repeatedly checking for GC mode when getting the return effect, just do this computation once. llvm-svn: 71193 | |||||
| * | Refactor BugReporter interface to have a new 'BugReporterContext' and | Ted Kremenek | 2009-05-06 | 1 | -28/+25 | |
| | | | | | | | | | | | | 'BugReporterVisitor'. This simplifies callbacks from BugReporter to BugReports (via VisitNode). It also lays the foundation for arbitrary visitor "call backs" that can be registered to a BugReporterContext as a PathDiagnostic is constructed. These call backs can help operate as separate "experts" that can work on constructed pieces of a PathDiagnostic for which they possess special knowledge. llvm-svn: 71121 | |||||
| * | Fix analyzer regression reported in PR 4164: | Ted Kremenek | 2009-05-06 | 1 | -1/+23 | |
| | | | | | | | | | | | - Update the old StoreManager::CastRegion to strip off 'ElementRegions' when casting to void* (Zhongxing: please validate) - Pass-by-reference argument invalidation logic in CFRefCount.cpp: - Strip ElementRegions when the ElementRegion is just a 'raw data' view on top of the underlying typed region. llvm-svn: 71094 | |||||
| * | Implement attribute 'ns_autorelease'. | Ted Kremenek | 2009-05-05 | 1 | -20/+27 | |
| | | | | | llvm-svn: 70990 | |||||
| * | Implement attribute 'cf_returns_owned' (mirrors 'ns_returns_owned'). | Ted Kremenek | 2009-05-05 | 1 | -0/+6 | |
| | | | | | llvm-svn: 70952 | |||||
| * | Remove experimental attribute 'ns_ownership_make_collectable.' | Ted Kremenek | 2009-05-04 | 1 | -2/+0 | |
| | | | | | llvm-svn: 70940 | |||||
| * | Rename attributes 'objc_ownership...' to 'ns_ownership...'. | Ted Kremenek | 2009-05-04 | 1 | -7/+7 | |
| | | | | | llvm-svn: 70897 | |||||
| * | Rename attributes: | Ted Kremenek | 2009-05-04 | 1 | -2/+2 | |
| | | | | | | | | | | | | 'objc_ownership_cfretain' -> 'cf_ownership_retain' 'objc_ownership_cfrelease' -> 'cf_ownership_release' Motivation: Core Foundation objects can be used in isolation from Objective-C, and this forces users to reason about the separate semantics of CF objects. More Sema support pending. llvm-svn: 70884 | |||||
| * | retain checker: Add checker support for FunctionDecl ownership annotations. ↵ | Ted Kremenek | 2009-05-04 | 1 | -0/+29 | |
| | | | | | | | Need to add Sema support. llvm-svn: 70873 | |||||
| * | retain checker: Pull out logic for parameter annotations into a | Ted Kremenek | 2009-05-04 | 1 | -12/+21 | |
| | | | | | | | separate method. llvm-svn: 70870 | |||||
| * | retain checker: Don't treat function's declared in macros differently. | Ted Kremenek | 2009-05-04 | 1 | -8/+1 | |
| | | | | | llvm-svn: 70869 | |||||
| * | retain checker: | Ted Kremenek | 2009-05-04 | 1 | -91/+83 | |
| | | | | | | | | - Fix retain checker test failures. - Update retain checker to have annotations override default summary effects, not completely redefine them. llvm-svn: 70828 | |||||
| * | retain checker: RetainSummaryManager now has a 'DefaultSummary' object | Ted Kremenek | 2009-05-04 | 1 | -39/+30 | |
| | | | | | | | | which is returned instead of a null pointer. This helps centralize the logic concerning "default effects". llvm-svn: 70826 | |||||
| * | retain checker: Don't bother using a FoldingSet to unique summaries. | Ted Kremenek | 2009-05-04 | 1 | -24/+3 | |
| | | | | | | | | We never compare summaries by their pointers, and we create only a handful of them when analyzing a given function. llvm-svn: 70824 | |||||
| * | Fix: <rdar://problem/6850275> CF objects returned from methods with "new" or ↵ | Ted Kremenek | 2009-05-03 | 1 | -13/+33 | |
| | | | | | | | | | | "copy" in their name should be treated as owned For methods that follow the "fundamental rule" and return Core Foundation objects, treat those objects as owned by the caller. llvm-svn: 70665 | |||||
| * | Convert ArgEffects from an std::vector to an ImmutableMap. This will make ↵ | Ted Kremenek | 2009-05-03 | 1 | -117/+59 | |
| | | | | | | | it much easier to clean up the summary generation logic with annotations. llvm-svn: 70660 | |||||
| * | Rename isTrackedObjectType() -> isTrackedObjCObjectType(). | Ted Kremenek | 2009-05-03 | 1 | -4/+4 | |
| | | | | | llvm-svn: 70657 | |||||
| * | retain/release checker: Enhance leak description to say that the bug | Ted Kremenek | 2009-05-02 | 1 | -1/+5 | |
| | | | | | | | occurs in GC mode. llvm-svn: 70638 | |||||
| * | retain/release checker: Hook up attributes 'objc_ownership_retain' and | Ted Kremenek | 2009-04-30 | 1 | -10/+20 | |
| | | | | | | | 'objc_ownership_release' to the effects on receivers. llvm-svn: 70507 | |||||
| * | Handle case in EvalReturn where we cache out in the ExplodedGraph. | Ted Kremenek | 2009-04-30 | 1 | -7/+11 | |
| | | | | | llvm-svn: 70475 | |||||
| * | retain/release checker: Use the ObjCMethodDecl in the @implementation if no | Ted Kremenek | 2009-04-30 | 1 | -2/+4 | |
| | | | | | | | matching ObjCMethodDecl exists in the @interface. llvm-svn: 70474 | |||||
| * | retain/release checker: Resolve method decl in @interface after getting the | Ted Kremenek | 2009-04-30 | 1 | -3/+4 | |
| | | | | | | | ObjCInterfaceDecl, not before. llvm-svn: 70473 | |||||
| * | retain/release checker: When determining whether an analyzed method can return | Ted Kremenek | 2009-04-29 | 1 | -30/+45 | |
| | | | | | | | | an owned object, consult its summary instead of inspecting the selector. This picks up annotations, and is just more general. llvm-svn: 70429 | |||||
| * | Format cleanup. No functionality change. | Ted Kremenek | 2009-04-29 | 1 | -3/+2 | |
| | | | | | llvm-svn: 70420 | |||||
| * | Reformat long line. No functionality change. | Ted Kremenek | 2009-04-29 | 1 | -3/+2 | |
| | | | | | llvm-svn: 70412 | |||||
| * | retain/release checker: Hoist code for bug reports above transfer function logic | Ted Kremenek | 2009-04-29 | 1 | -681/+695 | |
| | | | | | | | | (those diffs are just code moving) and move the logic for "return of owned object" leak reporting to EvalReturnStmt. llvm-svn: 70399 | |||||
| * | Add version of getMethodSummary() that can be used to query the summary for the | Ted Kremenek | 2009-04-29 | 1 | -0/+14 | |
| | | | | | | | method currently being analyzed. llvm-svn: 70388 | |||||
| * | Rename getMethodSummary() -> getInstanceMethodSummary(). | Ted Kremenek | 2009-04-29 | 1 | -7/+11 | |
| | | | | | llvm-svn: 70387 | |||||
| * | retain/release checker: Refactor getMethodSummary() to not depend on ↵ | Ted Kremenek | 2009-04-29 | 1 | -33/+35 | |
| | | | | | | | ObjCMessageExpr. llvm-svn: 70369 | |||||
| * | As discussed with Ted offline, re-apply r70293. | Zhongxing Xu | 2009-04-29 | 1 | -8/+1 | |
| | | | | | llvm-svn: 70358 | |||||
| * | retain/release checker: Refactor the guts of getClassMethodSummary to not depend | Ted Kremenek | 2009-04-29 | 1 | -15/+27 | |
| | | | | | | | | on ObjCMessageExpr. This will enable us to use it elsewhere. This should not change any functionality. llvm-svn: 70352 | |||||
| * | Implement ownership attribute 'objc_ownership_make_collectable'. This allows one | Ted Kremenek | 2009-04-28 | 1 | -0/+4 | |
| | | | | | | | to add 'CFMakeCollectable' semantics to a method. llvm-svn: 70336 | |||||
| * | Revert 70293. | Ted Kremenek | 2009-04-28 | 1 | -0/+7 | |
| | | | | | llvm-svn: 70313 | |||||

