Opened 16 months ago
Closed 15 months ago
#67811 closed defect (fixed)
wesnoth @1.16.9 build fails with gcc: error: 'quick_exit' is not a member of 'std'
Reported by: | barracuda156 | Owned by: | ryandesign (Ryan Carsten Schmidt) |
---|---|---|---|
Priority: | Low | Milestone: | |
Component: | ports | Version: | 2.8.1 |
Keywords: | Cc: | ||
Port: | wesnoth |
Description
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_games_wesnoth/wesnoth/work/wesnoth-1.16.9/src/serialization/schema/type.cpp:38:36: error: 'monostate' in namespace 'std' does not name a type :info:build 38 | bool operator()(const std::monostate&) const :info:build | ^~~~~~~~~ :info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_games_wesnoth/wesnoth/work/wesnoth-1.16.9/src/gui/dialogs/loading_screen.cpp:185:22: error: 'quick_exit' is not a member of 'std' :info:build 185 | std::quick_exit(0); :info:build | ^~~~~~~~~~
After the first error the build proceeds further, failing only after the second, much later.
- S. I had to use Boost 1.81 due to a need for coroutine, but apparently the error is not due to Boost version.
Change History (3)
comment:1 Changed 16 months ago by ryandesign (Ryan Carsten Schmidt)
comment:2 Changed 16 months ago by barracuda156
Opened an issue: https://github.com/wesnoth/wesnoth/issues/7813
comment:3 Changed 15 months ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Summary: | wesnoth build fails with gcc: error: 'quick_exit' is not a member of 'std' → wesnoth @1.16.9 build fails with gcc: error: 'quick_exit' is not a member of 'std' |
Fixed in 1.16.10: [4acac6ace0cd3bfa7f4dd32c91deb0b27acb16cc/macports-ports]
Note: See
TracTickets for help on using
tickets.
Replying to barracuda156:
According to this one must
#include <variant>
to getstd::monostate
. Does adding that to type.cpp help?There is a similar report here which was closed without being fixed.
We have successful builds on the buildbot on 10.7 and later. According to this macOS libc didn't implement
std::quick_exit
as recently as March 2020. Perhaps for that reason, six years ago this commit disabled the use ofstd::quick_exit
on macOS, but half an hour later this commit re-enabled the use ofstd::quick_exit
on macOS when using libstdc++, which you are since you're using gcc.These are upstream issues that should be reported to the developers.