hurd: Rewrite __libc_cleanup_*
commit542c20a171cbc8cb63155fa6344708d26e9c446b
authorAgustina Arzille <avarzille@riseup.net>
Sun, 18 Mar 2018 16:27:00 +0000 (18 17:27 +0100)
committerSamuel Thibault <samuel.thibault@ens-lyon.org>
Sun, 18 Mar 2018 16:27:00 +0000 (18 17:27 +0100)
tree0abb2c4b09254ca8d4af9e18d8f28dee4f01086d
parent9a37922ee049c2a12ba9d9457f7711ecd9813c88
hurd: Rewrite __libc_cleanup_*

This makes it notably safe against 'return' and such, and used for
__libc_cleanup_push/pop.

* sysdeps/mach/libc-lock.h (__libc_cleanup_frame): Define structure.
(__libc_cleanup_fct): Define function.
(__libc_cleanup_region_start, __libc_cleanup_region_end,
__libc_cleanup_end): Rewrite implementation using
__attribute__ ((__cleanup__)).
(__libc_cleanup_push, __libc_cleanup_pop): New macros.
ChangeLog
sysdeps/mach/libc-lock.h