Add support of ARC to Objective-C
---------------------------------
Key: THRIFT-1340
URL: https://issues.apache.org/jira/browse/THRIFT-1340
Project: Thrift
Issue Type: Improvement
Components: Cocoa - Compiler, Cocoa - Library
Affects Versions: 0.7
Environment: Mac OS X Lion, iOS 4.2, 4.3, 5.0..
Reporter: HIRANO Satoshi
Objective-C in Xcode 4.2 supports ARC (Automatic Reference Counting, not GC but
similar) and now it is the default both on OS X Lion and iOS 5. (ARC works on
iOS 4.2 or higher.)
The conventional Objective-C code includes many retain/release/autorelease for
maintaining the life time of objects.
Since the latest Objective-C compiler automatically generates stubs for
reference counting, code should not include any retain/release/autorelease.
Many Mac OS/iOS projects are moving to ARC mode. Although we can specify a
compiler flag which tells ARC or no-ARC file by file in Xcode 4.2, there is no
means to tell the Xcode that files generated by the thrift compiler are no-ARC.
Xcode produces many error messages like "retain is not allowed in ARC mode".
So, the thrift compiler should support ARC mode.
What we need are:
1) add -objc-arc flag to the thrift compiler.
2) If -objc-arc flag exists, omit generating code for
retain/release/autorelease.
Please look at "Programming with ARC reference notes" in iOS developer library.
http://andpdas.com/wp-content/uploads/2011/06/ARCProgrammingGuide.pdf
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira