Re: [PATCH 3/4] Port unwind protection to C23

2023-03-29 Thread Chet Ramey
On 3/26/23 7:50 PM, Paul Eggert wrote: Use the generic function type void (*) (void *) for all unwind cleanups. When an existing cleanup doesn't already have that type, change the type if the function is used only as a cleanup, and add a shim function otherwise. If the shim is used in more tha

Re: [PATCH 3/4] Port unwind protection to C23

2023-03-27 Thread Martin D Kealey
On Mon, 27 Mar 2023 at 18:35, Paul Eggert wrote: > The problem can also occur on platforms where calling conventions differ > depending on type even if the two types have the same representation, and > this can (and has) occurred on platforms with linear address spaces. > Indeed, this is *normal

Re: [PATCH 3/4] Port unwind protection to C23

2023-03-27 Thread Paul Eggert
On 2023-03-26 21:17, Martin D Kealey wrote: While C has never guaranteed that pointers all have the same size & alignment, POSIX does provide this guarantee, although indirectly (it has to be true for dlsym() to work, for example). My commit message was a bit misleading, as the problem is not l

Re: [PATCH 3/4] Port unwind protection to C23

2023-03-26 Thread Martin D Kealey
While C has never guaranteed that pointers all have the same size & alignment, POSIX does provide this guarantee, although indirectly (it has to be true for dlsym() to work, for example). Bash seems to need an environment that's "kinda POSIX" (at least emulating the POSIX process & signal models),