Opened 5 months ago

Last modified 5 months ago

#70109 new defect

poac @0.6.0 fails to build: error: call of overloaded 'format(const char [9], poac::f64&, const std::array<std::basic_string_view<char>, 9>::value_type&)' is ambiguous

Reported by: barracuda156 Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.9.3
Keywords: Cc:
Port: poac

Description

The port should be updated in fact, but the current version is broken:

:info:build [ 12%] Building CXX object _deps/ninja-build/CMakeFiles/libninja.dir/src/dyndep.cc.o
:info:build cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_sysutils_poac/poac/work/build/_deps/ninja-build && /opt/local/bin/g++-mp-13   -pipe -I/opt/local/libexec/openssl3/include -I/opt/local/libexec/boost/1.81/include -Os -DNDEBUG -isystem/opt/local/include/LegacySupport -I/opt/local/libexec/openssl3/include -I/opt/local/libexec/boost/1.81/include -isystem/opt/local/include -D_GLIBCXX_USE_CXX11_ABI=0 -pthread -std=c++11 -arch ppc -mmacosx-version-min=10.6 -Wno-deprecated -fdiagnostics-color -MD -MT _deps/ninja-build/CMakeFiles/libninja.dir/src/dyndep.cc.o -MF CMakeFiles/libninja.dir/src/dyndep.cc.o.d -o CMakeFiles/libninja.dir/src/dyndep.cc.o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_sysutils_poac/poac/work/build/_deps/ninja-src/src/dyndep.cc
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_sysutils_poac/poac/work/poac-0.6.0/lib/util/pretty.cc: In function 'poac::String poac::util::pretty::to_byte(poac::f64)':
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_sysutils_poac/poac/work/poac-0.6.0/lib/util/pretty.cc:38:16: error: call of overloaded 'format(const char [9], poac::f64&, const std::array<std::basic_string_view<char>, 9>::value_type&)' is ambiguous
:info:build    38 |   return format("{:.2f}{}", bytes, SIZE_SUFFIXES.at(index));
:info:build       |          ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:info:build In file included from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_sysutils_poac/poac/work/poac-0.6.0/include/poac/util/format.hpp:8,
:info:build                  from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_sysutils_poac/poac/work/poac-0.6.0/lib/util/pretty.cc:5:
:info:build /opt/local/include/libfmt9/fmt/core.h:3204:31: note: candidate: 'std::string fmt::v9::format(format_string<T ...>, T&& ...) [with T = {double&, const std::basic_string_view<char, std::char_traits<char> >&}; std::string = std::basic_string<char>; format_string<T ...> = basic_format_string<char, double&, const std::basic_string_view<char, std::char_traits<char> >&>]'
:info:build  3204 | FMT_NODISCARD FMT_INLINE auto format(format_string<T...> fmt, T&&... args)
:info:build       |                               ^~~~~~
:info:build In file included from /opt/local/include/gcc13/c++/bits/chrono_io.h:39,
:info:build                  from /opt/local/include/gcc13/c++/chrono:3330,
:info:build                  from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_sysutils_poac/poac/work/poac-0.6.0/include/poac/util/pretty.hpp:5,
:info:build                  from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_sysutils_poac/poac/work/poac-0.6.0/lib/util/pretty.cc:6:
:info:build /opt/local/include/gcc13/c++/format:3742:5: note: candidate: 'std::string std::format(format_string<_Args ...>, _Args&& ...) [with _Args = {double&, const basic_string_view<char, char_traits<char> >&}; string = basic_string<char>; format_string<_Args ...> = basic_format_string<char, double&, const basic_string_view<char, char_traits<char> >&>]'
:info:build  3742 |     format(format_string<_Args...> __fmt, _Args&&... __args)
:info:build       |     ^~~~~~

It also downloads some unnecessary stuff prior to compiling itself.

Change History (2)

comment:1 Changed 5 months ago by aeiouaeiouaeiouaeiouaeiouaeiou

Version 0.6.0 is too old, the new one has much simplified dependencies and requires oneTBB. It seems to require a major rewrite of portfile, but I can't do that at the moment.

comment:2 in reply to:  1 Changed 5 months ago by barracuda156

Replying to aeiouaeiouaeiouaeiouaeiouaeiou:

Version 0.6.0 is too old, the new one has much simplified dependencies and requires oneTBB. It seems to require a major rewrite of portfile, but I can't do that at the moment.

We should be good with OneTBB, it works on older systems too.

Note: See TracTickets for help on using tickets.