| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
llvm-svn: 85491
|
|
|
|
|
|
| |
are updated.
llvm-svn: 84447
|
|
|
|
| |
llvm-svn: 84339
|
|
|
|
| |
llvm-svn: 81346
|
|
|
|
|
|
| |
function's return
llvm-svn: 78541
|
|
|
|
| |
llvm-svn: 74280
|
|
|
|
|
|
| |
at the moment because we ignore the result.
llvm-svn: 73056
|
|
|
|
|
|
| |
Still more to do.
llvm-svn: 72173
|
|
|
|
|
|
| |
'cf_returns_retained'.
llvm-svn: 71311
|
|
|
|
| |
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: 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: 70940
|
|
|
|
| |
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
|
|
|
|
|
|
| |
to add 'CFMakeCollectable' semantics to a method.
llvm-svn: 70336
|
|
|
|
|
|
|
| |
'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
|
|
|
|
|
|
| |
support -pg, we never instrument :)
llvm-svn: 70061
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
PR4023
llvm-svn: 69618
|
|
|
|
| |
llvm-svn: 69044
|
|
|
|
|
|
|
|
|
|
|
| |
down to the ActionBase class. This eliminates dependencies of (e.g.)
DeclSpec.h on Action.h, meaning that action.h can now include these
headers and use their types directly in the actions interfaces.
This is a refactoring to support a future change, no functionality
change.
llvm-svn: 68869
|
|
|
|
|
|
|
| |
clients of the analyzer to designate custom assertion routines as "noreturn"
functions from the analyzer's perspective but not the compiler's.
llvm-svn: 68746
|
|
|
|
|
|
| |
ir gen. No intended change in functionality.
llvm-svn: 67857
|
|
|
|
|
|
| |
- Also, diagnose weak applied to types.
llvm-svn: 66259
|
|
|
|
|
|
|
| |
zero expression arguments. This eliminates 2579 1-byte
mallocs when parsing Cocoa.h.
llvm-svn: 65022
|
|
|
|
| |
llvm-svn: 64849
|
|
|
|
|
|
| |
implications.
llvm-svn: 64547
|
|
|
|
|
|
|
| |
We don't have "zero cost" exceptions for ObjC yet, so there is no codegen
support required.
llvm-svn: 64546
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1) implement parser and sema support for reading and verifying attribute(warnunusedresult).
2) rename hasLocalSideEffect to isUnusedResultAWarning, inverting the sense
of its result.
3) extend isUnusedResultAWarning to directly return the loc and range
info that should be reported to the user. Make it substantially more
precise in some cases than what was previously reported.
4) teach isUnusedResultAWarning about CallExpr to decls that are
pure/const/warnunusedresult, fixing a fixme.
5) change warn_attribute_wrong_decl_type to not pass in english strings, instead,
pass in integers and use %select.
llvm-svn: 64543
|
|
|
|
|
|
| |
ignore the malloc attribute however.
llvm-svn: 64538
|
|
|
|
| |
llvm-svn: 64536
|
|
|
|
|
|
| |
tweaks & test case)!
llvm-svn: 64478
|
|
|
|
| |
llvm-svn: 64446
|
|
|
|
| |
llvm-svn: 64441
|
|
|
|
| |
llvm-svn: 64380
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a new attribute, "overloadable", that enables C++
function overloading in C. The attribute can only be added to function
declarations, e.g.,
int *f(int) __attribute__((overloadable));
If the "overloadable" attribute exists on a function with a given
name, *all* functions with that name (and in that scope) must have the
"overloadable" attribute. Sets of overloaded functions with the
"overloadable" attribute then follow the normal C++ rules for
overloaded functions, e.g., overloads must have different
parameter-type-lists from each other.
When calling an overloaded function in C, we follow the same
overloading rules as C++, with three extensions to the set of standard
conversions:
- A value of a given struct or union type T can be converted to the
type T. This is just the identity conversion. (In C++, this would
go through a copy constructor).
- A value of pointer type T* can be converted to a value of type U*
if T and U are compatible types. This conversion has Conversion
rank (it's considered a pointer conversion in C).
- A value of type T can be converted to a value of type U if T and U
are compatible (and are not both pointer types). This conversion
has Conversion rank (it's considered to be a new kind of
conversion unique to C, a "compatible" conversion).
Known defects (and, therefore, next steps):
1) The standard-conversion handling does not understand conversions
involving _Complex or vector extensions, so it is likely to get
these wrong. We need to add these conversions.
2) All overloadable functions with the same name will have the same
linkage name, which means we'll get a collision in the linker (if
not sooner). We'll need to mangle the names of these functions.
llvm-svn: 64336
|
|
|
|
| |
llvm-svn: 64151
|
|
|
|
| |
llvm-svn: 63462
|
|
|
|
|
|
| |
objects as an objective-c object.
llvm-svn: 62197
|
|
|
|
| |
llvm-svn: 61114
|
|
|
|
| |
llvm-svn: 58304
|
|
|
|
| |
llvm-svn: 57121
|
|
|
|
|
|
| |
Also added a couple simple tests from the "gcc.apple" test suite.
llvm-svn: 56309
|