| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
aren' at the top-most scope of autorelease pools.
llvm-svn: 72065
|
|
|
|
|
|
| |
types that cannot be determined to be CF types
llvm-svn: 71921
|
|
|
|
|
|
| |
selector slot has a null IdentifierInfo*. This happens when analyzing Growl.
llvm-svn: 71857
|
|
|
|
|
|
| |
retained object.
llvm-svn: 71797
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
cf_returns_retained. Currently this attribute can now be applied to any
Objective-C method or C function that returns a pointer or Objective-C object
type.
Modify the tablegen definition of diagnostic 'warn_attribute_wrong_decl_type' to
expect that the diagnostics infrastructure will add quotes around the attribute
name when appropriate. Alonq with this change, I modified the places where this
warning is issued to passed the attribute's IdentifierInfo* instead of having a
hard-coded C constant string.
llvm-svn: 71718
|
|
|
|
|
|
|
|
|
| |
owned by caller
Now 'init' methods are treated by the retain/release checker as
claiming their receiver and allocating a new object.
llvm-svn: 71579
|
|
|
|
|
|
|
|
| |
same treatment as CF objects
This was accomplished by having 'isTypeRef' recursively walk the typedef stack.
llvm-svn: 71538
|
|
|
|
|
|
| |
extend the lifetime of an object stored to a container.
llvm-svn: 71452
|
|
|
|
| |
llvm-svn: 71444
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
- Improve -autorelease diagnostics.
- Improve VLA diagnostics.
- Use "short description" for bug when outputting to TextDiagnostics
llvm-svn: 71383
|
|
|
|
| |
llvm-svn: 71312
|
|
|
|
|
|
| |
'autorelease'.
llvm-svn: 71307
|
|
|
|
| |
llvm-svn: 71216
|
|
|
|
|
|
|
| |
- Rename 'ns_returns_owned' -> 'ns_returns_retained'.
- Rename 'cf_returns_owned' -> 'cf_returns_retained'.
llvm-svn: 71182
|
|
|
|
| |
llvm-svn: 70990
|
|
|
|
| |
llvm-svn: 70984
|
|
|
|
| |
llvm-svn: 70952
|
|
|
|
|
|
|
|
|
|
| |
ns_ownership_returns -> ns_returns_owned
ns_ownership_retain -> ns_retains
ns_ownership_release -> ns_releases
cf_ownership_retain -> cf_retains
cf_ownership_release -> cf_releases
llvm-svn: 70949
|
|
|
|
| |
llvm-svn: 70941
|
|
|
|
| |
llvm-svn: 70897
|
|
|
|
|
|
|
|
|
|
|
| |
'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
|
|
|
|
|
|
|
|
| |
return type and the selector. This is inconsistent with C functions
(where such attributes would be placed on the return type, not the the
FunctionDecl), and is inconsistent with what people are use to seeing.
llvm-svn: 70878
|
|
|
|
|
|
| |
'objc_ownership_release' to the effects on receivers.
llvm-svn: 70507
|
|
|
|
|
|
|
| |
applied to ObjCMethodDecls, not just parameters. This allows one to specific
side-effects on the receiver of a message expression. No checker support yet.
llvm-svn: 70505
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
appear between the return type and the selector. This is a separate code path
from regular attribute processing, as we only want to (a) accept only a specific
set of attributes in this place and (b) want to distinguish to clients the
context in which an attribute was added to an ObjCMethodDecl.
Currently, the attribute 'objc_ownership_returns' is the only attribute that
uses this new feature. Shortly I will add a warning for 'objc_ownership_returns'
to be placed at the end of a method declaration.
llvm-svn: 70504
|
|
|
|
|
|
| |
the return type and selector. Haven't hooked this up to Sema yet.
llvm-svn: 70501
|
|
|
|
|
|
|
| |
an owned object, consult its summary instead of inspecting the selector. This
picks up annotations, and is just more general.
llvm-svn: 70429
|
|
|
|
|
|
|
| |
(those diffs are just code moving) and move the logic for "return of owned
object" leak reporting to EvalReturnStmt.
llvm-svn: 70399
|
|
|
|
| |
llvm-svn: 70350
|
|
|
|
| |
llvm-svn: 70327
|
|
|
|
|
|
|
| |
'objc_ownership_cfrelease'. These are the 'release' equivalents of
'objc_ownership_retain' and 'objc_ownership_cfretain' respectively.
llvm-svn: 70235
|
|
|
|
|
|
|
|
| |
as 'objc_ownership_cfretain' except that the method acts like a CFRetain instead
of a [... retain] (important in GC modes). Checker support is wired up, but
currently only for Objective-C message expressions (not function calls).
llvm-svn: 70218
|
|
|
|
|
|
|
| |
users to specify that a method's argument is visibly retained (reference count
incremented).
llvm-svn: 70008
|
|
|
|
|
|
|
|
| |
to the checker yet, but essentially it allows a user to specify that an
Objective-C method or C function increments the reference count of a passed
object.
llvm-svn: 70005
|
|
|
|
| |
llvm-svn: 70002
|
|
|
|
|
|
|
| |
up to the checker yet, but essentially it allows a user to specify that an
Objective-C method or C function returns an owned an Objective-C object.
llvm-svn: 70001
|
|
|
|
|
|
| |
This was preventing the checker from tracking return objects referenced by 'id'.
llvm-svn: 69922
|
|
|
|
| |
llvm-svn: 69917
|
|
|
|
|
|
|
|
| |
extend the number of objects tracked by the retain/release checker by assuming
that all class and instance methods should follow Cocoa object "getter" and
"alloc/new" conventions.
llvm-svn: 69908
|
|
|
|
| |
llvm-svn: 68505
|
|
|
|
|
|
| |
Tests and drivers updated, still need to shuffle dirs.
llvm-svn: 67602
|
|
|
|
|
|
|
| |
<rdar://problem/6704930> involving SimpleConstraintManager not reasoning well
about symbolic constraint values involving arithmetic operators.
llvm-svn: 67534
|
|
|
|
| |
llvm-svn: 67327
|
|
|
|
|
|
| |
to return an owning pointer.
llvm-svn: 66934
|
|
|
|
| |
llvm-svn: 66487
|
|
|
|
| |
llvm-svn: 66483
|
|
|
|
| |
llvm-svn: 66168
|
|
|
|
| |
llvm-svn: 65048
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- 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
llvm-svn: 64737
|