Bug #13400
closedmcontext struct has differently-named members in OS X 10.4
Description
The mcontext
struct, used by Ruby in signal.c
and vm_dump.c
, has a different structure in OS X 10.4 than it does in later versions.
In OS X 10.5 and later, its members' names all start with a double underscore (__
); in 10.4, they don't. Similarly, the __ss
/ss
struct's members all begin with __
, for example __esp
, while in 10.4 they don't, for example esp
.
In addition, vm_dump.c
is missing an #include <ucontext.h>
in order to access the mcontext
struct definition.
Usage in signal.c
is here: https://github.com/ruby/ruby/blob/trunk/signal.c#L790-L794
Usage in vm_dump.c
is here: https://github.com/ruby/ruby/blob/trunk/vm_dump.c#L460-L480 https://github.com/ruby/ruby/blob/trunk/vm_dump.c#L825
I tested using Ruby 2.2.3p173 and Ruby 2.4; the sections of these files in trunk are unchanged and still have the bug in question. I'm building for i386.
Updated by nobu (Nobuyoshi Nakada) almost 7 years ago
OS X 10.4 has been outdated long ago.
I'm not positive to keep supporting such old OSs.
Updated by naruse (Yui NARUSE) almost 7 years ago
- Status changed from Open to Rejected
Ruby supports macOS which are still maintained by Apple.