• 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
Re: Exceptions not caught by catch(...)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Exceptions not caught by catch(...)


  • Subject: Re: Exceptions not caught by catch(...)
  • From: "Michael Crawford" <email@hidden>
  • Date: Tue, 23 Dec 2008 00:48:59 -0800

In general, you can't throw exceptions through any kind of C code
unless the C source was compiled by a C++ compiler.

Most if not all of Carbon is C, and I expect compiled with a C compiler.

I've had success at throwing exceptions through Open Source C
libraries - but only when I compiled them as C++.

The reason is that the propagation of exceptions is handled by some
runtime library code.  It's invisible to the programmer, but it is
there.  C source compiled by a C and not a C++ compiler won't be
linked with that runtime.

I'll send you my bill in the mail.

Mike
--
Michael David Crawford
mdcrawford at gmail dot com
http://www.geometricvisions.com/  <-- Download my music, or I shall
surely perish!
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

References: 
 >Exceptions not caught by catch(...) (From: "Michael Williamson" <email@hidden>)
 >Re: Exceptions not caught by catch(...) (From: glenn andreas <email@hidden>)
 >Re: Exceptions not caught by catch(...) (From: "Michael Williamson" <email@hidden>)

  • Prev by Date: Re: Exceptions not caught by catch(...)
  • Next by Date: Re: Exceptions not caught by catch(...)
  • Previous by thread: Re: Exceptions not caught by catch(...)
  • Next by thread: Re: Exceptions not caught by catch(...)
  • Index(es):
    • Date
    • Thread