ARC is capable of managing lifetime for toll-free bridging types.
However, other CoreFoundation types still have to be handled with care just as other unmanaged "pure C" resources.
It would be nice to have automatically generated implementations for cf_consumed cf_returns_retained cf_returns_not_retained
http://clang-analyzer.llvm.org/annotations.html