Use ucontext_t not struct ucontext in linux-unwind.h files.
authorJoseph Myers <joseph@codesourcery.com>
Wed, 28 Jun 2017 09:21:16 +0000 (10:21 +0100)
committerJoseph Myers <jsm28@gcc.gnu.org>
Wed, 28 Jun 2017 09:21:16 +0000 (10:21 +0100)
commit883312dc79806f513275b72502231c751c14ff72
tree66fb0b08477787df13afde783070a42340bab415
parent601d22f69093aa98dcf9593bc138da7ba8281e05
Use ucontext_t not struct ucontext in linux-unwind.h files.

Current glibc no longer gives the ucontext_t type the tag struct
ucontext, to conform with POSIX namespace rules.  This requires
various linux-unwind.h files in libgcc, that were previously using
struct ucontext, to be fixed to use ucontext_t instead.  This is
similar to the removal of the struct siginfo tag from siginfo_t some
years ago.

This patch changes those files to use ucontext_t instead.  As the
standard name that should be unconditionally safe, so this is not
restricted to architectures supported by glibc, or conditioned on the
glibc version.

Tested compilation together with current glibc with glibc's
build-many-glibcs.py.

* config/aarch64/linux-unwind.h (aarch64_fallback_frame_state),
config/alpha/linux-unwind.h (alpha_fallback_frame_state),
config/bfin/linux-unwind.h (bfin_fallback_frame_state),
config/i386/linux-unwind.h (x86_64_fallback_frame_state,
x86_fallback_frame_state), config/m68k/linux-unwind.h (struct
uw_ucontext), config/nios2/linux-unwind.h (struct nios2_ucontext),
config/pa/linux-unwind.h (pa32_fallback_frame_state),
config/riscv/linux-unwind.h (riscv_fallback_frame_state),
config/sh/linux-unwind.h (sh_fallback_frame_state),
config/tilepro/linux-unwind.h (tile_fallback_frame_state),
config/xtensa/linux-unwind.h (xtensa_fallback_frame_state): Use
ucontext_t instead of struct ucontext.

From-SVN: r249731
12 files changed:
libgcc/ChangeLog
libgcc/config/aarch64/linux-unwind.h
libgcc/config/alpha/linux-unwind.h
libgcc/config/bfin/linux-unwind.h
libgcc/config/i386/linux-unwind.h
libgcc/config/m68k/linux-unwind.h
libgcc/config/nios2/linux-unwind.h
libgcc/config/pa/linux-unwind.h
libgcc/config/riscv/linux-unwind.h
libgcc/config/sh/linux-unwind.h
libgcc/config/tilepro/linux-unwind.h
libgcc/config/xtensa/linux-unwind.h