• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
when __bridge isn't required
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

when __bridge isn't required


  • Subject: when __bridge isn't required
  • From: Matt Neuburg <email@hidden>
  • Date: Sat, 27 Jul 2013 11:31:53 -0700

I feel like I've asked this before, but I don't feel I'm grasping the answer. Why don't these work the same way under ARC:

    NSString* answer = @"42";
    int ans = CFStringGetIntValue((CFStringRef)answer);

and

    NSURL* imageSource = [NSURL new];
    CGImageSourceRef src =
        CGImageSourceCreateWithURL((CFURLRef)imageSource, nil);

The first one compiles (with no explicit __bridge). The second one doesn't; you must say __bridge explicitly. But why? They look completely parallel to me.

The mystery is compounded by the fact that if you omit the cast entirely in the first example, the compiler claims that you need a bridged cast. But you don't; you just need a cast. That feels like a bug; if a mere cast is sufficient, the compiler should say so (and Fix-It should offer it as a possible fix).

m.

--
matt neuburg, phd = email@hidden, http://www.apeth.net/matt/
pantes anthropoi tou eidenai oregontai phusei
Programming iOS 6! http://shop.oreilly.com/product/0636920029717.do
RubyFrontier! http://www.apeth.com/RubyFrontierDocs/default.html
TidBITS, Mac news and reviews since 1990, http://www.tidbits.com


_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


  • Follow-Ups:
    • Re: when __bridge isn't required
      • From: Tom Davie <email@hidden>
    • Re: when __bridge isn't required
      • From: Robert Martin <email@hidden>
  • Prev by Date: Re: Observing Time
  • Next by Date: Re: when __bridge isn't required
  • Previous by thread: Dev site back up
  • Next by thread: Re: when __bridge isn't required
  • Index(es):
    • Date
    • Thread