summaryrefslogtreecommitdiffstats
path: root/clang/docs/AutomaticReferenceCounting.html
Commit message (Collapse)AuthorAgeFilesLines
* Documentation: convert AutomaticReferenceCounting.html to reSTDmitri Gribenko2012-12-131-2226/+0
| | | | | | Patch by Anastasi Voitova with with small fixes by me. llvm-svn: 170132
* Fix missing 'clang' in pragma example in ARC doc.Ted Kremenek2012-08-301-2/+2
| | | | llvm-svn: 162933
* Clarify the point at which ARC destroys ivars vis-à-visJohn McCall2012-08-291-0/+30
| | | | | | [super dealloc]. rdar://problem/11141872 llvm-svn: 162833
* Fix a pair of bugs relating to properties in ARC.John McCall2012-08-201-0/+9
| | | | | | | | | | | | | | | | | | | | First, when synthesizing an explicitly strong/retain/copy property of Class type, don't pretend during compatibility checking that the property is actually assign. Instead, resolve incompatibilities by secretly changing the type of *implicitly* __unsafe_unretained Class ivars to be strong. This is moderately evil but better than what we were doing. Second, when synthesizing the setter for a strong property of non-retainable type, be sure to use objc_setProperty. This is possible when the property is decorated with the NSObject attribute. This is an ugly, ugly corner of the language, and we probably ought to deprecate it. The first is rdar://problem/12039404; the second was noticed by inspection while fixing the first. llvm-svn: 162244
* Fix two typos in the docSylvestre Ledru2012-07-251-1/+1
| | | | llvm-svn: 160763
* Fix typos found by http://github.com/lyda/misspell-checkBenjamin Kramer2012-06-021-1/+1
| | | | llvm-svn: 157886
* Forbid the block and lambda copy-capture of __autoreleasing variablesJohn McCall2012-03-301-1/+3
| | | | | | in ARC, under the usual reasoning limiting the use of __autoreleasing. llvm-svn: 153725
* Update the ARC specification for several changes made in theJohn McCall2012-03-271-39/+285
| | | | | | | | | last N months. This required a brief soliloquy about change in an uncertainly-versioned world. I believe I've gotten the right target versions on all these changes. llvm-svn: 153501
* Fix ALL the markup.Benjamin Kramer2012-01-151-25/+21
| | | | llvm-svn: 148219
* Fix typo (becuase->because), PR11427David Blaikie2011-11-241-1/+1
| | | | llvm-svn: 145117
* ARC: make assignment to 'self' within class methods illegal. Fixes ↵Ted Kremenek2011-11-141-3/+6
| | | | | | <rdar://problem/10416568>. llvm-svn: 144572
* Update documentation to use "C++11" instead of "C++0x"David Blaikie2011-10-181-1/+1
| | | | llvm-svn: 142339
* Document the existing objc_precise_lifetime attribute.John McCall2011-07-221-0/+83
| | | | | | | | | Introduce and document a new objc_returns_inner_pointer attribute, and consume it by performing a retain+autorelease on message receivers when they're not immediately loaded from an object with precise lifetime. llvm-svn: 135764
* Document the behavior of property modifiers in ARC.John McCall2011-07-131-0/+37
| | | | | | rdar://problem/9768338 llvm-svn: 135104
* Move and elaborate the section on objc_arc_weak_unavailable.John McCall2011-07-071-5/+33
| | | | llvm-svn: 134567
* Update document for objc_arc_weak_unavailable attributeFariborz Jahanian2011-07-061-1/+4
| | | | | | on class declarations. Documentation for // rdar://9693477 llvm-svn: 134558
* Update document on use of ns_returns_not_retainedFariborz Jahanian2011-07-061-1/+7
| | | | | | attribute on property. Document for // rdar://9636091. llvm-svn: 134556
* Update documentation for // rdar://9619861Fariborz Jahanian2011-07-061-2/+3
| | | | llvm-svn: 134544
* More clarifications.John McCall2011-06-191-15/+16
| | | | llvm-svn: 133387
* Improve the intro to the runtime-functions section.John McCall2011-06-191-4/+27
| | | | llvm-svn: 133386
* Describe the ARC runtime support calls.John McCall2011-06-191-0/+265
| | | | llvm-svn: 133385
* Clarify the semantics of init methods, and point out a few placesJohn McCall2011-06-181-38/+67
| | | | | | where mismatched semantics can cause undefined behavior. llvm-svn: 133341
* A couple of minor changes to the ARC spec, plus a new sectionJohn McCall2011-06-181-1/+98
| | | | | | | specifying that retain/release/autorelease/retainCount are forbidden, plus a section talking about the behavior of dealloc. llvm-svn: 133340
* Objective-C++ ARC: eliminate the utterly unjustified loophole thatDouglas Gregor2011-06-171-6/+9
| | | | | | | | | | | silently dropped ownership qualifiers that were being applied to ownership-qualified, substituted type that was *not* a substituted template type parameter. We now provide a diagnostic in such cases, and recover by dropping the added qualifiers. Document this behavior in the ARC specification. llvm-svn: 133309
* Fix a grammaroDouglas Gregor2011-06-171-1/+1
| | | | llvm-svn: 133304
* Objective-ARC++: infer template type arguments ofDouglas Gregor2011-06-171-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | ownership-unqualified retainable object type as __strong. This allows us to write, e.g., std::vector<id> and we'll infer that the vector's element types have __strong ownership semantics, which is far nicer than requiring: std::vector<__strong id> Note that we allow one to override the ownership qualifier of a substituted template type parameter, e.g., given template<typename T> struct X { typedef __weak T type; }; X<id> is treated the same as X<__strong id>. At instantiation type, the __weak in "__weak T" overrides the (inferred or specified) __strong on the template argument type, so that we can still provide metaprogramming transformations. This is part of <rdar://problem/9595486>. llvm-svn: 133303
* The specification document for the new ObjC Automatic Reference CountingJohn McCall2011-06-151-0/+1350
feature. Implementation to follow. :) llvm-svn: 133090
OpenPOWER on IntegriCloud