https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93644

Bruno Haible <bruno at clisp dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bruno at clisp dot org

--- Comment #9 from Bruno Haible <bruno at clisp dot org> ---
We now have a generic workaround to this bug:

If the bug occurs in a function foo:
1. Rename foo to foo_internal, mark it as '__attribute__ ((__noinline__))
static' and add a 'char stack_buf[1024]' parameter.
2. In the function foo_internal, drop the stack-allocated buffer and use the
new parameter instead.
3. Create a new function foo, with the same signature as before, that merely
allocates a 'char stack_buf[1024]' on the stack and passes it to foo_internal.

For an example, see
https://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commitdiff;h=2a3468c9f263596815a3383c0157ba9a81cf2d24

Reply via email to