Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tests fail to build with clang-13 #12

Closed
yurivict opened this issue May 3, 2022 · 5 comments
Closed

Tests fail to build with clang-13 #12

yurivict opened this issue May 3, 2022 · 5 comments
Assignees

Comments

@yurivict
Copy link

yurivict commented May 3, 2022

In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:23: error: call to deleted function 'from_chars'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                                    ^~~~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:120:1: note: in instantiation of function template specialization 'estd::impl::string_to_numerical<float>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(float);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:77:22: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                return estd::impl::string_to_numerical<T>(from); \
                                   ^
/usr/include/c++/v1/charconv:124:6: note: candidate function has been explicitly deleted
void from_chars(const char*, const char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:607:1: note: candidate template ignored: requirement 'is_integral<float>::value' was not satisfied [with _Tp = float]
from_chars(const char* __first, const char* __last, _Tp& __value)
^
/usr/include/c++/v1/charconv:614:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
from_chars(const char* __first, const char* __last, _Tp& __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/parse.cpp:29:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:8: error: variable has incomplete type 'void'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                     ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:24: error: call to deleted function 'to_chars'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                                            ^~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:120:1: note: in instantiation of function template specialization 'estd::impl::numerical_to_string<float>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(float);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:95:23: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                auto result = impl::numerical_to_string<T>(from); \
                                    ^
/usr/include/c++/v1/charconv:123:6: note: candidate function has been explicitly deleted
void to_chars(char*, char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:393:1: note: candidate template ignored: requirement 'is_integral<float>::value' was not satisfied [with _Tp = float]
to_chars(char* __first, char* __last, _Tp __value)
^
/usr/include/c++/v1/charconv:401:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
to_chars(char* __first, char* __last, _Tp __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/parse.cpp:29:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:9: error: variable has incomplete type 'void'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                             ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:23: error: call to deleted function 'from_chars'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                                    ^~~~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:121:1: note: in instantiation of function template specialization 'estd::impl::string_to_numerical<double>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(double);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:77:22: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                return estd::impl::string_to_numerical<T>(from); \
                                   ^
/usr/include/c++/v1/charconv:124:6: note: candidate function has been explicitly deleted
void from_chars(const char*, const char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:607:1: note: candidate template ignored: requirement 'is_integral<double>::value' was not satisfied [with _Tp = double]
from_chars(const char* __first, const char* __last, _Tp& __value)
^
/usr/include/c++/v1/charconv:614:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
from_chars(const char* __first, const char* __last, _Tp& __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/parse.cpp:29:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:8: error: variable has incomplete type 'void'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                     ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:24: error: call to deleted function 'to_chars'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                                            ^~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:121:1: note: in instantiation of function template specialization 'estd::impl::numerical_to_string<double>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(double);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:95:23: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                auto result = impl::numerical_to_string<T>(from); \
                                    ^
/usr/include/c++/v1/charconv:123:6: note: candidate function has been explicitly deleted
void to_chars(char*, char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:393:1: note: candidate template ignored: requirement 'is_integral<double>::value' was not satisfied [with _Tp = double]
to_chars(char* __first, char* __last, _Tp __value)
^
/usr/include/c++/v1/charconv:401:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
to_chars(char* __first, char* __last, _Tp __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/parse.cpp:29:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:9: error: variable has incomplete type 'void'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                             ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:23: error: call to deleted function 'from_chars'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                                    ^~~~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:122:1: note: in instantiation of function template specialization 'estd::impl::string_to_numerical<long double>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(long double);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:77:22: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                return estd::impl::string_to_numerical<T>(from); \
                                   ^
/usr/include/c++/v1/charconv:124:6: note: candidate function has been explicitly deleted
void from_chars(const char*, const char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:607:1: note: candidate template ignored: requirement 'is_integral<long double>::value' was not satisfied [with _Tp = long double]
from_chars(const char* __first, const char* __last, _Tp& __value)
^
/usr/include/c++/v1/charconv:614:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
from_chars(const char* __first, const char* __last, _Tp& __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/parse.cpp:29:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:8: error: variable has incomplete type 'void'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                     ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:24: error: call to deleted function 'to_chars'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                                            ^~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:122:1: note: in instantiation of function template specialization 'estd::impl::numerical_to_string<long double>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(long double);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:95:23: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                auto result = impl::numerical_to_string<T>(from); \
                                    ^
/usr/include/c++/v1/charconv:123:6: note: candidate function has been explicitly deleted
void to_chars(char*, char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:393:1: note: candidate template ignored: requirement 'is_integral<long double>::value' was not satisfied [with _Tp = long double]
to_chars(char* __first, char* __last, _Tp __value)
^
/usr/include/c++/v1/charconv:401:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
to_chars(char* __first, char* __last, _Tp __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/parse.cpp:29:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:9: error: variable has incomplete type 'void'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                             ^
12 errors generated.
[  4% 12/85] /usr/bin/c++  -I/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -Wall -Wextra -Wpedantic -std=c++17 -MD -MT test/array/CMakeFiles/test_estd_array_initialize.dir/initialize.cpp.o -MF test/array/CMakeFiles/test_estd_array_initialize.dir/initialize.cpp.o.d -o test/array/CMakeFiles/test_estd_array_initialize.dir/initialize.cpp.o -c /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/array/initialize.cpp
[  5% 12/85] : && /usr/local/bin/cmake -E rm -f test/convert/libtest_estd_convert_traits.a && /usr/bin/llvm-ar qc test/convert/libtest_estd_convert_traits.a  test/convert/CMakeFiles/test_estd_convert_traits.dir/traits.cpp.o && /usr/bin/llvm-ranlib test/convert/libtest_estd_convert_traits.a && :
[  7% 12/85] /usr/bin/c++  -I/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -Wall -Wextra -Wpedantic -std=c++17 -MD -MT test/any/CMakeFiles/test_estd_any_any.dir/any.cpp.o -MF test/any/CMakeFiles/test_estd_any_any.dir/any.cpp.o.d -o test/any/CMakeFiles/test_estd_any_any.dir/any.cpp.o -c /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/any/any.cpp
[  8% 12/85] /usr/bin/c++  -I/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -Wall -Wextra -Wpedantic -std=c++17 -MD -MT test/convert/CMakeFiles/test_estd_convert_stl.dir/stl.cpp.o -MF test/convert/CMakeFiles/test_estd_convert_stl.dir/stl.cpp.o.d -o test/convert/CMakeFiles/test_estd_convert_stl.dir/stl.cpp.o -c /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/stl.cpp
[  9% 12/85] /usr/bin/c++  -I/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -Wall -Wextra -Wpedantic -std=c++17 -MD -MT test/convert/CMakeFiles/test_estd_convert_convert.dir/convert.cpp.o -MF test/convert/CMakeFiles/test_estd_convert_convert.dir/convert.cpp.o.d -o test/convert/CMakeFiles/test_estd_convert_convert.dir/convert.cpp.o -c /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/convert.cpp
[ 10% 12/85] /usr/bin/c++  -I/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -Wall -Wextra -Wpedantic -std=c++17 -MD -MT test/convert/CMakeFiles/test_estd_convert_numerical.dir/numerical.cpp.o -MF test/convert/CMakeFiles/test_estd_convert_numerical.dir/numerical.cpp.o.d -o test/convert/CMakeFiles/test_estd_convert_numerical.dir/numerical.cpp.o -c /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/numerical.cpp
FAILED: test/convert/CMakeFiles/test_estd_convert_numerical.dir/numerical.cpp.o 
/usr/bin/c++  -I/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -Wall -Wextra -Wpedantic -std=c++17 -MD -MT test/convert/CMakeFiles/test_estd_convert_numerical.dir/numerical.cpp.o -MF test/convert/CMakeFiles/test_estd_convert_numerical.dir/numerical.cpp.o.d -o test/convert/CMakeFiles/test_estd_convert_numerical.dir/numerical.cpp.o -c /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/numerical.cpp
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/numerical.cpp:30:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:23: error: call to deleted function 'from_chars'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                                    ^~~~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:120:1: note: in instantiation of function template specialization 'estd::impl::string_to_numerical<float>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(float);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:77:22: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                return estd::impl::string_to_numerical<T>(from); \
                                   ^
/usr/include/c++/v1/charconv:124:6: note: candidate function has been explicitly deleted
void from_chars(const char*, const char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:607:1: note: candidate template ignored: requirement 'is_integral<float>::value' was not satisfied [with _Tp = float]
from_chars(const char* __first, const char* __last, _Tp& __value)
^
/usr/include/c++/v1/charconv:614:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
from_chars(const char* __first, const char* __last, _Tp& __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/numerical.cpp:30:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:8: error: variable has incomplete type 'void'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                     ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:24: error: call to deleted function 'to_chars'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                                            ^~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:120:1: note: in instantiation of function template specialization 'estd::impl::numerical_to_string<float>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(float);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:95:23: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                auto result = impl::numerical_to_string<T>(from); \
                                    ^
/usr/include/c++/v1/charconv:123:6: note: candidate function has been explicitly deleted
void to_chars(char*, char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:393:1: note: candidate template ignored: requirement 'is_integral<float>::value' was not satisfied [with _Tp = float]
to_chars(char* __first, char* __last, _Tp __value)
^
/usr/include/c++/v1/charconv:401:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
to_chars(char* __first, char* __last, _Tp __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/numerical.cpp:30:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:9: error: variable has incomplete type 'void'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                             ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:23: error: call to deleted function 'from_chars'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                                    ^~~~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:121:1: note: in instantiation of function template specialization 'estd::impl::string_to_numerical<double>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(double);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:77:22: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                return estd::impl::string_to_numerical<T>(from); \
                                   ^
/usr/include/c++/v1/charconv:124:6: note: candidate function has been explicitly deleted
void from_chars(const char*, const char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:607:1: note: candidate template ignored: requirement 'is_integral<double>::value' was not satisfied [with _Tp = double]
from_chars(const char* __first, const char* __last, _Tp& __value)
^
/usr/include/c++/v1/charconv:614:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
from_chars(const char* __first, const char* __last, _Tp& __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/numerical.cpp:30:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:8: error: variable has incomplete type 'void'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                     ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:24: error: call to deleted function 'to_chars'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                                            ^~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:121:1: note: in instantiation of function template specialization 'estd::impl::numerical_to_string<double>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(double);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:95:23: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                auto result = impl::numerical_to_string<T>(from); \
                                    ^
/usr/include/c++/v1/charconv:123:6: note: candidate function has been explicitly deleted
void to_chars(char*, char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:393:1: note: candidate template ignored: requirement 'is_integral<double>::value' was not satisfied [with _Tp = double]
to_chars(char* __first, char* __last, _Tp __value)
^
/usr/include/c++/v1/charconv:401:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
to_chars(char* __first, char* __last, _Tp __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/numerical.cpp:30:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:9: error: variable has incomplete type 'void'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                             ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:23: error: call to deleted function 'from_chars'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                                    ^~~~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:122:1: note: in instantiation of function template specialization 'estd::impl::string_to_numerical<long double>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(long double);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:77:22: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                return estd::impl::string_to_numerical<T>(from); \
                                   ^
/usr/include/c++/v1/charconv:124:6: note: candidate function has been explicitly deleted
void from_chars(const char*, const char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:607:1: note: candidate template ignored: requirement 'is_integral<long double>::value' was not satisfied [with _Tp = long double]
from_chars(const char* __first, const char* __last, _Tp& __value)
^
/usr/include/c++/v1/charconv:614:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
from_chars(const char* __first, const char* __last, _Tp& __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/numerical.cpp:30:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:8: error: variable has incomplete type 'void'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                     ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:24: error: call to deleted function 'to_chars'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                                            ^~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:122:1: note: in instantiation of function template specialization 'estd::impl::numerical_to_string<long double>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(long double);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:95:23: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                auto result = impl::numerical_to_string<T>(from); \
                                    ^
/usr/include/c++/v1/charconv:123:6: note: candidate function has been explicitly deleted
void to_chars(char*, char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:393:1: note: candidate template ignored: requirement 'is_integral<long double>::value' was not satisfied [with _Tp = long double]
to_chars(char* __first, char* __last, _Tp __value)
^
/usr/include/c++/v1/charconv:401:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
to_chars(char* __first, char* __last, _Tp __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/convert/numerical.cpp:30:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:9: error: variable has incomplete type 'void'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                             ^
12 errors generated.
[ 11% 12/85] /usr/bin/c++  -I/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -Wall -Wextra -Wpedantic -std=c++17 -MD -MT test/heap_array/CMakeFiles/test_estd_heap_array_heap_array.dir/heap_array.cpp.o -MF test/heap_array/CMakeFiles/test_estd_heap_array_heap_array.dir/heap_array.cpp.o.d -o test/heap_array/CMakeFiles/test_estd_heap_array_heap_array.dir/heap_array.cpp.o -c /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/heap_array/heap_array.cpp
[ 12% 12/85] /usr/bin/c++  -I/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -Wall -Wextra -Wpedantic -std=c++17 -MD -MT test/range/CMakeFiles/test_estd_range_range.dir/range.cpp.o -MF test/range/CMakeFiles/test_estd_range_range.dir/range.cpp.o.d -o test/range/CMakeFiles/test_estd_range_range.dir/range.cpp.o -c /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/range/range.cpp
FAILED: test/range/CMakeFiles/test_estd_range_range.dir/range.cpp.o 
/usr/bin/c++  -I/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -O2 -pipe -fno-omit-frame-pointer -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -fno-omit-frame-pointer  -isystem /usr/local/include -Wall -Wextra -Wpedantic -std=c++17 -MD -MT test/range/CMakeFiles/test_estd_range_range.dir/range.cpp.o -MF test/range/CMakeFiles/test_estd_range_range.dir/range.cpp.o.d -o test/range/CMakeFiles/test_estd_range_range.dir/range.cpp.o -c /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/range/range.cpp
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/range/range.cpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range.hpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/range.hpp:31:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/../convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:23: error: call to deleted function 'from_chars'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                                    ^~~~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:120:1: note: in instantiation of function template specialization 'estd::impl::string_to_numerical<float>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(float);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:77:22: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                return estd::impl::string_to_numerical<T>(from); \
                                   ^
/usr/include/c++/v1/charconv:124:6: note: candidate function has been explicitly deleted
void from_chars(const char*, const char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:607:1: note: candidate template ignored: requirement 'is_integral<float>::value' was not satisfied [with _Tp = float]
from_chars(const char* __first, const char* __last, _Tp& __value)
^
/usr/include/c++/v1/charconv:614:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
from_chars(const char* __first, const char* __last, _Tp& __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/range/range.cpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range.hpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/range.hpp:31:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/../convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:8: error: variable has incomplete type 'void'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                     ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:24: error: call to deleted function 'to_chars'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                                            ^~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:120:1: note: in instantiation of function template specialization 'estd::impl::numerical_to_string<float>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(float);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:95:23: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                auto result = impl::numerical_to_string<T>(from); \
                                    ^
/usr/include/c++/v1/charconv:123:6: note: candidate function has been explicitly deleted
void to_chars(char*, char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:393:1: note: candidate template ignored: requirement 'is_integral<float>::value' was not satisfied [with _Tp = float]
to_chars(char* __first, char* __last, _Tp __value)
^
/usr/include/c++/v1/charconv:401:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
to_chars(char* __first, char* __last, _Tp __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/range/range.cpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range.hpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/range.hpp:31:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/../convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:9: error: variable has incomplete type 'void'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                             ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:23: error: call to deleted function 'from_chars'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                                    ^~~~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:121:1: note: in instantiation of function template specialization 'estd::impl::string_to_numerical<double>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(double);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:77:22: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                return estd::impl::string_to_numerical<T>(from); \
                                   ^
/usr/include/c++/v1/charconv:124:6: note: candidate function has been explicitly deleted
void from_chars(const char*, const char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:607:1: note: candidate template ignored: requirement 'is_integral<double>::value' was not satisfied [with _Tp = double]
from_chars(const char* __first, const char* __last, _Tp& __value)
^
/usr/include/c++/v1/charconv:614:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
from_chars(const char* __first, const char* __last, _Tp& __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/range/range.cpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range.hpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/range.hpp:31:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/../convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:8: error: variable has incomplete type 'void'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                     ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:24: error: call to deleted function 'to_chars'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                                            ^~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:121:1: note: in instantiation of function template specialization 'estd::impl::numerical_to_string<double>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(double);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:95:23: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                auto result = impl::numerical_to_string<T>(from); \
                                    ^
/usr/include/c++/v1/charconv:123:6: note: candidate function has been explicitly deleted
void to_chars(char*, char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:393:1: note: candidate template ignored: requirement 'is_integral<double>::value' was not satisfied [with _Tp = double]
to_chars(char* __first, char* __last, _Tp __value)
^
/usr/include/c++/v1/charconv:401:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
to_chars(char* __first, char* __last, _Tp __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/range/range.cpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range.hpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/range.hpp:31:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/../convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:9: error: variable has incomplete type 'void'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                             ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:23: error: call to deleted function 'from_chars'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                                    ^~~~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:122:1: note: in instantiation of function template specialization 'estd::impl::string_to_numerical<long double>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(long double);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:77:22: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                return estd::impl::string_to_numerical<T>(from); \
                                   ^
/usr/include/c++/v1/charconv:124:6: note: candidate function has been explicitly deleted
void from_chars(const char*, const char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:607:1: note: candidate template ignored: requirement 'is_integral<long double>::value' was not satisfied [with _Tp = long double]
from_chars(const char* __first, const char* __last, _Tp& __value)
^
/usr/include/c++/v1/charconv:614:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
from_chars(const char* __first, const char* __last, _Tp& __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/range/range.cpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range.hpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/range.hpp:31:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/../convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:46:8: error: variable has incomplete type 'void'
                auto [ptr, error] = std::from_chars(input.data(), input.data() + input.size(), value);
                     ^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:24: error: call to deleted function 'to_chars'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                                            ^~~~~~~~~~~~~
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:122:1: note: in instantiation of function template specialization 'estd::impl::numerical_to_string<long double>' requested here
ESTD_DEFINE_NUMERICAL_CONVERSIONS(long double);
^
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:95:23: note: expanded from macro 'ESTD_DEFINE_NUMERICAL_CONVERSIONS'
                auto result = impl::numerical_to_string<T>(from); \
                                    ^
/usr/include/c++/v1/charconv:123:6: note: candidate function has been explicitly deleted
void to_chars(char*, char*, bool, int = 10) = delete;
     ^
/usr/include/c++/v1/charconv:393:1: note: candidate template ignored: requirement 'is_integral<long double>::value' was not satisfied [with _Tp = long double]
to_chars(char* __first, char* __last, _Tp __value)
^
/usr/include/c++/v1/charconv:401:1: note: candidate function template not viable: requires 4 arguments, but 3 were provided
to_chars(char* __first, char* __last, _Tp __value, int __base)
^
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/test/range/range.cpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range.hpp:30:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/range.hpp:31:
In file included from /disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/range/../convert.hpp:33:
/disk-samsung/freebsd-ports/devel/estd/work/estd-0.6.4/include/estd/convert/numerical.hpp:58:9: error: variable has incomplete type 'void'
                        auto [ptr, error] = std::to_chars(result.data(), result.data() + result.size(), input);
                             ^
12 errors generated.

Version: 0.6.4
OS: FreeBSD 13

@de-vri-es
Copy link
Contributor

de-vri-es commented May 3, 2022

Hmm, it looks like the C++ standard library for clang on FreeBSD doesn't have to/from_chars for floats and doubles. But that seems weird.

Do you know which C++ standard library clang is using on FreeBSD?

@de-vri-es de-vri-es self-assigned this May 3, 2022
@yurivict
Copy link
Author

yurivict commented May 3, 2022

Do you know which C++ standard library clang is using on FreeBSD?

It uses libc++.

@mordante
Copy link

mordante commented May 6, 2022

This is indeed not supported on libc++13. https://libcxx.llvm.org/Status/Cxx17.html

P0067: std::(to|from)_chars for integrals has been available since version 7.0. std::to_chars
for float and double since version 14.0 std::to_chars for long double uses the implementation
for double.

@de-vri-es
Copy link
Contributor

Hmmm, that is a shame. I'd be willing to accept a PR that detects libc++ < 14 and falls back to old-style string formatting. However, it should not be locale dependent, which is a bit annoying.

Alternatively, a PR to disable string conversions for floats would be a possibility :(

@de-vri-es
Copy link
Contributor

This should now be "fixed" with 4e90835 and 5bcd2c3.

The float/string conversions are disabled with libc++ < 14 with a warning, and the tests are also disabled in that case.

There is no fallback implementation for older libc++ or GCC though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants