https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116642
--- Comment #8 from Joshua <joshudson at gmail dot com> --- I am absolutely certain declaring new local variables inside the vfork() block is kosher. Modifying variables outside the vfork() block simply requires marking them volatile; in this the rule is the same as setjmp().