diff options
author | Jon Turney <jon.turney@dronecode.org.uk> | 2024-06-07 17:29:10 +0100 |
---|---|---|
committer | Jon Turney <jon.turney@dronecode.org.uk> | 2024-06-16 15:30:34 +0100 |
commit | 7e3c833592b282355a57dd34459b152e4e078d19 (patch) | |
tree | 4401be0b6a93d6f209f324d1e10c833c846ff8a5 | |
parent | 1ed15161362b2eb5649b049b7ab0aaf8097bd43a (diff) | |
download | newlib-7e3c833592b282355a57dd34459b152e4e078d19.zip newlib-7e3c833592b282355a57dd34459b152e4e078d19.tar.gz newlib-7e3c833592b282355a57dd34459b152e4e078d19.tar.bz2 |
Cygwin: suppress a warning generated with w32api >= 12.0.0
w32api 12.0.0 adds the returns_twice attribute to RtlCaptureContext().
There's some data-flow interaction with using it inside a while loop
which causes a maybe-uninitialized warning.
../../../../winsup/cygwin/exceptions.cc: In member function 'int _cygtls::call_signal_handler()':
../../../../winsup/cygwin/exceptions.cc:1720:33: error: '<anonymous>' may be used uninitialized in this function [-Werror=maybe-uninitialized]
-rw-r--r-- | winsup/cygwin/exceptions.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/winsup/cygwin/exceptions.cc b/winsup/cygwin/exceptions.cc index a2a6f9d..28d0431 100644 --- a/winsup/cygwin/exceptions.cc +++ b/winsup/cygwin/exceptions.cc @@ -1717,7 +1717,10 @@ _cygtls::call_signal_handler () context, unwind to the caller and in case we're called from sigdelayed, fix the instruction pointer accordingly. */ context.uc_mcontext.ctxflags = CONTEXT_FULL; +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wmaybe-uninitialized" RtlCaptureContext ((PCONTEXT) &context.uc_mcontext); +#pragma GCC diagnostic pop __unwind_single_frame ((PCONTEXT) &context.uc_mcontext); if (stackptr > stack) { |