You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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 <boost/context/fiber.hpp> 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.
The text was updated successfully, but these errors were encountered:
Finally got to it but looks like the problem persists. I tested develop at be271d3e4758b260947b9b0c20855c1ba33cf346. The fibonacci example still segfaults and moving the fiber.hpp include to the top still fixes it.
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 theucontext
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 <boost/context/fiber.hpp>
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.The text was updated successfully, but these errors were encountered: