libbitcoin / libbitcoin-system

Bitcoin Cross-Platform C++ Development Toolkit

Home Page:https://libbitcoin.info/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ubuntu/Clang14 incompatibility.

evoskuil opened this issue · comments

/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/chrono:2320:48: error: call to consteval function 'std::chrono::hh_mm_ss::_S_fractional_width' is not a constant expression
        static constexpr unsigned fractional_width = {_S_fractional_width()};
                                                      ^
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/chrono:2320:48: note: undefined function '_S_fractional_width' cannot be used in a constant expression
/usr/bin/../lib/gcc/x86_64-linux-gnu/13/../../../../include/c++/13/chrono:2275:2: note: declared here
        _S_fractional_width()
        ^
  CXX      src/chain/libbitcoin_system_la-chain_state.lo

https://github.com/libbitcoin/libbitcoin-system/actions/runs/7681642280/job/20949297354?pr=1378#step:8:627

The problem is an incompatibility with Clang14.

Some ubuntu-latest runners come with a newer version of libstdc++ and still have clang 14 which only has partial consteval support.

Addressed by libbitcoin-build#305 which bumps to clang-15.

Resolved