Hi everyone,
This message is mostly for Daniel, but anyone with some experience using
these functions should not hesitate to add their thoughts.

Daniel, I just noticed your pull request on github last night. I'm good
with most of it, my only concern is the bridging functions. I made a
comment last night, but later discovered I misunderstood their purpose. I'd
like to get your pull request merged, and want do discuss it before we move
forward.

My understanding of the documentation for CFBridgingRelease and
CFBridgingRetain is that they are essentially no-ops, unless ARC is in
effect. And even when ARC is being used they do not do anything other than
tell the compiler that the object is now controlled by ARC. With that in
mind, these two "functions" should do nothing other than cast the CF object
as an ARC aware object, and nothing at all if ARC is not implemented. Does
this sound reasonable? Another part of this conversation is where do these
functions belong. According to the Apple documentation, they are part of
Foundation, so should they not be in Base, instead?

As for CFAutorelease, I think this is the function where
objc_autoreleaseReturnValue() needs to be used. The documentation for this
function is nonexistent, so I'm just guessing at what it really does.

Any thoughts? Anyone?

Stefan
_______________________________________________
Gnustep-dev mailing list
Gnustep-dev@gnu.org
https://lists.gnu.org/mailman/listinfo/gnustep-dev

Reply via email to