boostorg / boostorg/context

Segfault with ucontext on macOS (#184, continued)

Open
#238 3 comments 1 reaction 0 assignees View on GitHub
Dominant language
Assembly
Stars
370
Forks
186
Avg merge
24d 6h
Merged PRs (30d)
1

Description

Although #213, accepted in #184, did apparently fix part of the problem, Boost.Context's own example programs still segfault due to the `_XOPEN_SOURCE` issue described in that pull request: if a Boost.Context client includes (for example) a standard C++ header before a Boost.Context one, `_XOPEN_SOURCE` is not defined when the `ucontext` struct is defined, resulting in its definition having fewer fields than when `_XOPEN_SOURCE` is defined, as Boost.Context expects it to be. Thus the segfault.

For example, I fixed the *fibonacci* example's segfault by moving `#include ` above the inclusions of the stdlib headers.

Seems like the best workaround at this point is to export `-D_XOPEN_SOURCE` to clients from Boost.Context's build.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.