[PATCH 1/1] newlib/libc/include/setjmp.h: Add returns_twice attribute to setjmp()
Torbjorn SVENSSON
torbjorn.svensson@foss.st.com
Wed Oct 1 07:22:27 GMT 2025
Hi Joel,
On 2025-09-30 16:49, Joel Sherrill wrote:
> The setjmp() function needs this attribute to help GCC avoid false
> positives for the -Wclobbered warning. The -Wclobbered warning is
> part of -Wextra.
> ---
> newlib/libc/include/setjmp.h | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/newlib/libc/include/setjmp.h b/newlib/libc/include/setjmp.h
> index a2830b275..5c16321a4 100644
> --- a/newlib/libc/include/setjmp.h
> +++ b/newlib/libc/include/setjmp.h
> @@ -17,7 +17,12 @@ void longjmp (jmp_buf __jmpb, int __retval)
> #else
> void longjmp (jmp_buf __jmpb, int __retval);
> #endif
> -int setjmp (jmp_buf __jmpb);
> +
> +#ifdef __GNUC__
> +int setjmp (jmp_buf __jmpb)
> + __attribute__ ((returns_twice));;
I suppose you only want a single semi-colon here.
> +#else
I think you should also drop the empty "#else" block.
Kind regards,
Torbjörn
> +#endif
>
> _END_STD_C
>
More information about the Newlib
mailing list