https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91398
--- Comment #1 from joseph at codesourcery dot com <joseph at codesourcery dot com> --- ABI question: is a function that returns a value through such a hidden pointer required not to write anything to the storage pointed to until it knows that it will definitely be returning normally (rather than e.g. through longjmp)? The ABI document seems silent on this matter. This optimization is only valid if there is such a requirement, since *out in the example given must not be written if the function returns through longjmp.