On Nov 10, 2011, at 9:40 AM, Iain Sandoe wrote:
Thanks for catching that --- brainstorm on my part ... the code
under discussion should have been #ifndef OBCPLUS
There is no prohibition against C having exceptions, so, doesn't
matter if you turn C++ off, you can still throw through C code, so
turning on exceptions is reasonable.
Moreover, there is no personality routine in m32 NeXT libobjc, so
if one tries to engage the zero-cost exceptions, one gets a link
error (and generates a load of unused eh data). I can work around
that if there is still reason to have "-fexceptions" on.
No, this must be wrong:
$ cat t.c
void bar() {
}
void foo() {
bar();
}
int main() {
return 0;
}
$ gcc -fexceptions t.c
$ gcc -m32 -fexceptions t.c
$
Like I said, it does work, one can count on it working and it is
useful, you can't break it. And next week, they'll add catching and
throwing to C, and when they do, it still has to just work. :-)