------- Comment #22 from rguenth at gcc dot gnu dot org 2009-01-20 09:13
-------
>From tree-inline.c:
case BUILT_IN_LONGJMP:
/* We can't inline functions that call __builtin_longjmp at
all. The non-local goto machinery really requires the
destination be in a different function. If we allow the
function calling __builtin_longjmp to be inlined into the
function calling __builtin_setjmp, Things will Go Awry. */
so IMHO we shouldn't inline foo (). See inline_forbidden_p_stmt.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38587