[Bug objc/77481] @finally not executed if exception not caught or rethrown
egallager at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Jul 27 16:35:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77481
Eric Gallager <egallager at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2017-07-27
CC| |egallager at gcc dot gnu.org
Ever confirmed|0 |1
--- Comment #2 from Eric Gallager <egallager at gcc dot gnu.org> ---
I have to remove the '-static' for it to work, and when I do, it fails in cases
2, 3, and 4 for me on i386-apple-darwin9.8.0:
$ for n in $(seq 1 4); do echo executing case $n; gcc -DF=$n finally.m
-fobjc-exceptions -lobjc -static && ./a.out ; echo $?; echo ; done
executing case 1
/var/tmp//ccYBJZE4.s:74:FATAL:incompatible feature used: directive
.objc_cat_cls_meth (must specify "-dynamic" to be used)
1
executing case 2
/var/tmp//ccwUJaps.s:78:FATAL:incompatible feature used: directive
.objc_cat_cls_meth (must specify "-dynamic" to be used)
1
executing case 3
/var/tmp//ccFvcf5x.s:92:FATAL:incompatible feature used: directive
.objc_cat_cls_meth (must specify "-dynamic" to be used)
1
executing case 4
/var/tmp//ccA54Xxu.s:78:FATAL:incompatible feature used: directive
.objc_cat_cls_meth (must specify "-dynamic" to be used)
1
$ for n in $(seq 1 4); do echo executing case $n; gcc -DF=$n finally.m
-fobjc-exceptions -lobjc && ./a.out ; echo $?; echo ; done
executing case 1
trying
finalizing
done
0
executing case 2
trying
objc[40891]: objc_exception_throw failed
Illegal instruction
132
executing case 3
trying
objc[40900]: objc_exception_throw failed
Illegal instruction
132
executing case 4
trying
objc[40908]: objc_exception_throw failed
Illegal instruction
132
$
So confirming.
More information about the Gcc-bugs
mailing list