Closed jonesmz closed 4 years ago
Hi Michael!
Thanks for the feedback. It looks like there is something wrong with RawDataReadable<T>
predicate. Could you please investigate it more precisely? Do OZO passes tests with GCC 9.2?
I will try the OZO test suite and report back.
Here is the output of the OZO test suite with gcc 9.2
jonesmz@mzj-mpp-workspace ~/ozo/build $ make -j$(nproc)
Scanning dependencies of target GoogleTest
[ 2%] Creating directories for 'GoogleTest'
[ 4%] Performing download step (git clone) for 'GoogleTest'
-- GoogleTest download command succeeded. See also /home/jonesmz/ozo/build/tests/GoogleTest-prefix/src/GoogleTest-stamp/GoogleTest-download-*.log
[ 8%] No update step for 'GoogleTest'
[ 8%] No patch step for 'GoogleTest'
[ 10%] Performing configure step for 'GoogleTest'
-- GoogleTest configure command succeeded. See also /home/jonesmz/ozo/build/tests/GoogleTest-prefix/src/GoogleTest-stamp/GoogleTest-configure-*.log
[ 12%] Performing build step for 'GoogleTest'
-- GoogleTest build command succeeded. See also /home/jonesmz/ozo/build/tests/GoogleTest-prefix/src/GoogleTest-stamp/GoogleTest-build-*.log
[ 14%] Performing install step for 'GoogleTest'
[ 25%] Built target gtest
[ 50%] Built target gtest_main
[ 75%] Built target gmock
[100%] Built target gmock_main
Install the project...
-- Install configuration: ""
-- Installing: /home/jonesmz/ozo/build/tests/include
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-actions.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-cardinalities.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-function-mocker.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-generated-actions.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-generated-actions.h.pump
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-generated-function-mockers.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-generated-function-mockers.h.pump
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-generated-matchers.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-generated-matchers.h.pump
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-matchers.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-more-actions.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-more-matchers.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-nice-strict.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock-spec-builders.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/gmock.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/internal
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/internal/custom
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/internal/custom/README.md
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/internal/custom/gmock-generated-actions.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/internal/custom/gmock-generated-actions.h.pump
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/internal/custom/gmock-matchers.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/internal/custom/gmock-port.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/internal/gmock-internal-utils.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/internal/gmock-port.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gmock/internal/gmock-pp.h
-- Installing: /home/jonesmz/ozo/build/tests/lib64/libgmock.a
-- Installing: /home/jonesmz/ozo/build/tests/lib64/libgmock_main.a
-- Installing: /home/jonesmz/ozo/build/tests/lib64/pkgconfig/gmock.pc
-- Installing: /home/jonesmz/ozo/build/tests/lib64/pkgconfig/gmock_main.pc
-- Installing: /home/jonesmz/ozo/build/tests/lib64/cmake/GTest/GTestTargets.cmake
-- Installing: /home/jonesmz/ozo/build/tests/lib64/cmake/GTest/GTestTargets-noconfig.cmake
-- Installing: /home/jonesmz/ozo/build/tests/lib64/cmake/GTest/GTestConfigVersion.cmake
-- Installing: /home/jonesmz/ozo/build/tests/lib64/cmake/GTest/GTestConfig.cmake
-- Up-to-date: /home/jonesmz/ozo/build/tests/include
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/gtest-death-test.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/gtest-matchers.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/gtest-message.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/gtest-param-test.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/gtest-printers.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/gtest-spi.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/gtest-test-part.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/gtest-typed-test.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/gtest.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/gtest_pred_impl.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/gtest_prod.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/custom
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/custom/README.md
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/custom/gtest-port.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/custom/gtest-printers.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/custom/gtest.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/gtest-death-test-internal.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/gtest-filepath.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/gtest-internal.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/gtest-param-util.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/gtest-port-arch.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/gtest-port.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/gtest-string.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/gtest-type-util.h
-- Installing: /home/jonesmz/ozo/build/tests/include/gtest/internal/gtest-type-util.h.pump
-- Installing: /home/jonesmz/ozo/build/tests/lib64/libgtest.a
-- Installing: /home/jonesmz/ozo/build/tests/lib64/libgtest_main.a
-- Installing: /home/jonesmz/ozo/build/tests/lib64/pkgconfig/gtest.pc
-- Installing: /home/jonesmz/ozo/build/tests/lib64/pkgconfig/gtest_main.pc
[ 16%] Completed 'GoogleTest'
[ 16%] Built target GoogleTest
Scanning dependencies of target ozo_tests
[ 18%] Building CXX object tests/CMakeFiles/ozo_tests.dir/impl/async_connect.cpp.o
[ 20%] Building CXX object tests/CMakeFiles/ozo_tests.dir/binary_deserialization.cpp.o
[ 22%] Building CXX object tests/CMakeFiles/ozo_tests.dir/binary_serialization.cpp.o
[ 27%] Building CXX object tests/CMakeFiles/ozo_tests.dir/binary_query.cpp.o
[ 27%] Building CXX object tests/CMakeFiles/ozo_tests.dir/bind.cpp.o
[ 29%] Building CXX object tests/CMakeFiles/ozo_tests.dir/composite.cpp.o
[ 31%] Building CXX object tests/CMakeFiles/ozo_tests.dir/connection.cpp.o
[ 33%] Building CXX object tests/CMakeFiles/ozo_tests.dir/connection_info.cpp.o
[ 35%] Building CXX object tests/CMakeFiles/ozo_tests.dir/connection_pool.cpp.o
[ 37%] Building CXX object tests/CMakeFiles/ozo_tests.dir/query_builder.cpp.o
[ 39%] Building CXX object tests/CMakeFiles/ozo_tests.dir/type_traits.cpp.o
[ 41%] Building CXX object tests/CMakeFiles/ozo_tests.dir/query_conf.cpp.o
[ 43%] Building CXX object tests/CMakeFiles/ozo_tests.dir/result.cpp.o
[ 45%] Building CXX object tests/CMakeFiles/ozo_tests.dir/concept.cpp.o
[ 47%] Building CXX object tests/CMakeFiles/ozo_tests.dir/deadline.cpp.o
[ 50%] Building CXX object tests/CMakeFiles/ozo_tests.dir/impl/async_send_query_params.cpp.o
[ 52%] Building CXX object tests/CMakeFiles/ozo_tests.dir/none.cpp.o
[ 54%] Building CXX object tests/CMakeFiles/ozo_tests.dir/error.cpp.o
[ 56%] Building CXX object tests/CMakeFiles/ozo_tests.dir/impl/async_get_result.cpp.o
[ 58%] Building CXX object tests/CMakeFiles/ozo_tests.dir/detail/base36.cpp.o
[ 60%] Building CXX object tests/CMakeFiles/ozo_tests.dir/detail/functional.cpp.o
[ 62%] Building CXX object tests/CMakeFiles/ozo_tests.dir/detail/begin_statement_builder.cpp.o
[ 64%] Building CXX object tests/CMakeFiles/ozo_tests.dir/detail/timeout_handler.cpp.o
[ 66%] Building CXX object tests/CMakeFiles/ozo_tests.dir/detail/make_copyable.cpp.o
[ 68%] Building CXX object tests/CMakeFiles/ozo_tests.dir/impl/request_oid_map.cpp.o
In file included from /home/jonesmz/ozo/tests/query_builder.cpp:1:
/home/jonesmz/ozo/include/ozo/query_builder.h:187:16: error: ISO C++ did not adopt string literal operator templates taking an argument pack of characters [-Werror=pedantic]
187 | constexpr auto operator "" _SQL() {
| ^~~~~~~~
In file included from /home/jonesmz/ozo/include/ozo/detail/begin_statement_builder.h:13,
from /home/jonesmz/ozo/tests/detail/begin_statement_builder.cpp:1:
/home/jonesmz/ozo/include/ozo/query_builder.h:187:16: error: ISO C++ did not adopt string literal operator templates taking an argument pack of characters [-Werror=pedantic]
187 | constexpr auto operator "" _SQL() {
| ^~~~~~~~
[ 70%] Building CXX object tests/CMakeFiles/ozo_tests.dir/impl/request_oid_map_handler.cpp.o
[ 72%] Building CXX object tests/CMakeFiles/ozo_tests.dir/impl/async_start_transaction.cpp.o
[ 75%] Building CXX object tests/CMakeFiles/ozo_tests.dir/impl/async_end_transaction.cpp.o
[ 77%] Building CXX object tests/CMakeFiles/ozo_tests.dir/impl/transaction.cpp.o
In file included from /home/jonesmz/ozo/include/ozo/impl/async_request.h:9,
from /home/jonesmz/ozo/include/ozo/impl/request_oid_map.h:3,
from /home/jonesmz/ozo/include/ozo/impl/async_connect.h:7,
from /home/jonesmz/ozo/include/ozo/connection_info.h:5,
from /home/jonesmz/ozo/tests/connection_info.cpp:1:
/home/jonesmz/ozo/include/ozo/query_builder.h:187:16: error: ISO C++ did not adopt string literal operator templates taking an argument pack of characters [-Werror=pedantic]
187 | constexpr auto operator "" _SQL() {
| ^~~~~~~~
[ 79%] Building CXX object tests/CMakeFiles/ozo_tests.dir/transaction_status.cpp.o
In file included from /home/jonesmz/ozo/include/ozo/io/send.h:6,
from /home/jonesmz/ozo/tests/binary_serialization.cpp:1:
/home/jonesmz/ozo/include/ozo/io/ostream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = unsigned int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {unsigned int}]’
/home/jonesmz/ozo/include/ozo/io/send.h:132:10: required from ‘ozo::ostream& ozo::send_frame(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = ozo::strong_typedef_wrapper<std::vector<char>, ozo::pg::bytea_strong_typedef_tag>]’
/home/jonesmz/ozo/tests/binary_serialization.cpp:142:73: required from here
/home/jonesmz/ozo/include/ozo/io/ostream.h:51:25: error: no matching function for call to ‘ozo::ostream::write(ozo::detail::typed_buffer<unsigned int>&)’
51 | return write(buf);
| ^
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(const char_type*, std::streamsize)’
25 | ostream& write(const char_type* s, std::streamsize n) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::ostream&> ozo::ostream::write(T)’
36 | Require<Integral<T> && sizeof(T) == 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: template argument deduction/substitution failed:
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/move.h:55,
from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/stl_pair.h:59,
from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/utility:70,
from /usr/include/boost/fusion/support/config.hpp:13,
from /usr/include/boost/fusion/adapted.hpp:11,
from /home/jonesmz/ozo/include/ozo/core/concept.h:7,
from /home/jonesmz/ozo/include/ozo/io/send.h:3,
from /home/jonesmz/ozo/tests/binary_serialization.cpp:1:
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/type_traits: In substitution of ‘template<bool _Cond, class _Tp> using enable_if_t = typename std::enable_if::type [with bool _Cond = false; _Tp = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/core/concept.h:56:7: required by substitution of ‘template<bool Condition, class Type> using Require = std::enable_if_t<Condition, Type> [with bool Condition = (((bool)ozo::Integral<ozo::detail::typed_buffer<unsigned int> >) && (sizeof (ozo::detail::typed_buffer<unsigned int>) == 1)); Type = ozo::ostream&]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: required by substitution of ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::ostream&> ozo::ostream::write(T) [with T = ozo::detail::typed_buffer<unsigned int>]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:51:25: required from ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = unsigned int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {unsigned int}]’
/home/jonesmz/ozo/include/ozo/io/send.h:132:10: required from ‘ozo::ostream& ozo::send_frame(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = ozo::strong_typedef_wrapper<std::vector<char>, ozo::pg::bytea_strong_typedef_tag>]’
/home/jonesmz/ozo/tests/binary_serialization.cpp:142:73: required from here
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/type_traits:2384:11: error: no type named ‘type’ in ‘struct std::enable_if<false, ozo::ostream&>’
2384 | using enable_if_t = typename enable_if<_Cond, _Tp>::type;
| ^~~~~~~~~~~
In file included from /home/jonesmz/ozo/include/ozo/io/send.h:6,
from /home/jonesmz/ozo/tests/binary_serialization.cpp:1:
/home/jonesmz/ozo/include/ozo/io/ostream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = unsigned int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {unsigned int}]’
/home/jonesmz/ozo/include/ozo/io/send.h:132:10: required from ‘ozo::ostream& ozo::send_frame(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = ozo::strong_typedef_wrapper<std::vector<char>, ozo::pg::bytea_strong_typedef_tag>]’
/home/jonesmz/ozo/tests/binary_serialization.cpp:142:73: required from here
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: candidate: ‘template<class T> ozo::Require<RawDataReadable<T>, ozo::ostream&> ozo::ostream::write(const T&)’
41 | Require<RawDataReadable<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T)’
48 | Require<Integral<T> && sizeof(T) != 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::ostream&> ozo::ostream::write(T)’
55 | Require<FloatingPoint<T>, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(bool)’
59 | ostream& write(bool in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<unsigned int>’ to ‘bool’
59 | ostream& write(bool in) {
| ~~~~~^~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: candidate: ‘template<class T> ozo::Require<HanaSequence<T>, ozo::ostream&> ozo::ostream::write(const T&)’
65 | Require<HanaSequence<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::ostream&> ozo::ostream::write(const T&)’
71 | Require<HanaStruct<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = short int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {const short int&}]’
/home/jonesmz/ozo/include/ozo/io/send.h:56:21: required from ‘static ozo::ostream& ozo::send_impl<In, <template-parameter-1-2> >::apply(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = short int; <template-parameter-1-2> = void]’
/home/jonesmz/ozo/include/ozo/io/send.h:94:69: required from ‘ozo::ostream& ozo::send(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = short int]’
/home/jonesmz/ozo/tests/binary_serialization.cpp:28:44: required from here
/home/jonesmz/ozo/include/ozo/io/ostream.h:51:25: error: no matching function for call to ‘ozo::ostream::write(ozo::detail::typed_buffer<short int>&)’
51 | return write(buf);
| ^
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(const char_type*, std::streamsize)’
25 | ostream& write(const char_type* s, std::streamsize n) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::ostream&> ozo::ostream::write(T)’
36 | Require<Integral<T> && sizeof(T) == 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: candidate: ‘template<class T> ozo::Require<RawDataReadable<T>, ozo::ostream&> ozo::ostream::write(const T&)’
41 | Require<RawDataReadable<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T)’
48 | Require<Integral<T> && sizeof(T) != 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::ostream&> ozo::ostream::write(T)’
55 | Require<FloatingPoint<T>, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(bool)’
59 | ostream& write(bool in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<short int>’ to ‘bool’
59 | ostream& write(bool in) {
| ~~~~~^~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: candidate: ‘template<class T> ozo::Require<HanaSequence<T>, ozo::ostream&> ozo::ostream::write(const T&)’
65 | Require<HanaSequence<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::ostream&> ozo::ostream::write(const T&)’
71 | Require<HanaStruct<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {const int&}]’
/home/jonesmz/ozo/include/ozo/io/send.h:56:21: required from ‘static ozo::ostream& ozo::send_impl<In, <template-parameter-1-2> >::apply(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = int; <template-parameter-1-2> = void]’
/home/jonesmz/ozo/include/ozo/io/send.h:94:69: required from ‘ozo::ostream& ozo::send(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = int]’
/home/jonesmz/ozo/tests/binary_serialization.cpp:33:44: required from here
/home/jonesmz/ozo/include/ozo/io/ostream.h:51:25: error: no matching function for call to ‘ozo::ostream::write(ozo::detail::typed_buffer<int>&)’
51 | return write(buf);
| ^
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(const char_type*, std::streamsize)’
25 | ostream& write(const char_type* s, std::streamsize n) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::ostream&> ozo::ostream::write(T)’
36 | Require<Integral<T> && sizeof(T) == 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: candidate: ‘template<class T> ozo::Require<RawDataReadable<T>, ozo::ostream&> ozo::ostream::write(const T&)’
41 | Require<RawDataReadable<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T)’
48 | Require<Integral<T> && sizeof(T) != 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::ostream&> ozo::ostream::write(T)’
55 | Require<FloatingPoint<T>, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(bool)’
59 | ostream& write(bool in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<int>’ to ‘bool’
59 | ostream& write(bool in) {
| ~~~~~^~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: candidate: ‘template<class T> ozo::Require<HanaSequence<T>, ozo::ostream&> ozo::ostream::write(const T&)’
65 | Require<HanaSequence<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::ostream&> ozo::ostream::write(const T&)’
71 | Require<HanaStruct<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = long int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {const long int&}]’
/home/jonesmz/ozo/include/ozo/io/send.h:56:21: required from ‘static ozo::ostream& ozo::send_impl<In, <template-parameter-1-2> >::apply(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = long int; <template-parameter-1-2> = void]’
/home/jonesmz/ozo/include/ozo/io/send.h:94:69: required from ‘ozo::ostream& ozo::send(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = long int]’
/home/jonesmz/ozo/tests/binary_serialization.cpp:38:44: required from here
/home/jonesmz/ozo/include/ozo/io/ostream.h:51:25: error: no matching function for call to ‘ozo::ostream::write(ozo::detail::typed_buffer<long int>&)’
51 | return write(buf);
| ^
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(const char_type*, std::streamsize)’
25 | ostream& write(const char_type* s, std::streamsize n) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::ostream&> ozo::ostream::write(T)’
36 | Require<Integral<T> && sizeof(T) == 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: candidate: ‘template<class T> ozo::Require<RawDataReadable<T>, ozo::ostream&> ozo::ostream::write(const T&)’
41 | Require<RawDataReadable<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T)’
48 | Require<Integral<T> && sizeof(T) != 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::ostream&> ozo::ostream::write(T)’
55 | Require<FloatingPoint<T>, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(bool)’
59 | ostream& write(bool in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<long int>’ to ‘bool’
59 | ostream& write(bool in) {
| ~~~~~^~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: candidate: ‘template<class T> ozo::Require<HanaSequence<T>, ozo::ostream&> ozo::ostream::write(const T&)’
65 | Require<HanaSequence<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::ostream&> ozo::ostream::write(const T&)’
71 | Require<HanaStruct<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: template argument deduction/substitution failed:
In file included from /home/jonesmz/ozo/include/ozo/io/send.h:6,
from /home/jonesmz/ozo/include/ozo/ext/std/nullopt_t.h:5,
from /home/jonesmz/ozo/include/ozo/ext/std.h:12,
from /home/jonesmz/ozo/include/ozo/io/binary_query.h:3,
from /home/jonesmz/ozo/tests/binary_query.cpp:1:
/home/jonesmz/ozo/include/ozo/io/ostream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {const int&}]’
/home/jonesmz/ozo/include/ozo/io/send.h:56:21: required from ‘static ozo::ostream& ozo::send_impl<In, <template-parameter-1-2> >::apply(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = int; <template-parameter-1-2> = void]’
/home/jonesmz/ozo/include/ozo/io/send.h:94:69: required from ‘ozo::ostream& ozo::send(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = int]’
/home/jonesmz/ozo/include/ozo/io/binary_query.h:162:60: required from ‘ozo::binary_query::impl_type<Text, Params, OidMap, Allocator>::impl_type(Text, const Params&, const OidMap&, const Allocator&) [with Text = const char*; Params = boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >; OidMap = ozo::oid_map_t<>; Allocator = std::allocator<char>]::<lambda(auto:20&)> [with auto:20 = const int]’
/usr/include/boost/hana/for_each.hpp:46:45: required from ‘constexpr void boost::hana::detail::on_each<F>::operator()(Xs&& ...) const [with Xs = {const bool&, const int&, const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&}; F = ozo::binary_query::impl_type<Text, Params, OidMap, Allocator>::impl_type(Text, const Params&, const OidMap&, const Allocator&) [with Text = const char*; Params = boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >; OidMap = ozo::oid_map_t<>; Allocator = std::allocator<char>]::<lambda(auto:20&)>*]’
/usr/include/boost/hana/basic_tuple.hpp:115:39: [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr_base.h:1344:71: required from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >&, const ozo::oid_map_t<>&, const std::allocator<char>&}; _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, ozo::oid_map_t<>, std::allocator<char> >; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr.h:359:59: required from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >&, const ozo::oid_map_t<>&, const std::allocator<char>&}; _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, ozo::oid_map_t<>, std::allocator<char> >]’
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr.h:701:14: required from ‘std::shared_ptr<_Tp> std::allocate_shared(const _Alloc&, _Args&& ...) [with _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, ozo::oid_map_t<>, std::allocator<char> >; _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >&, const ozo::oid_map_t<>&, const std::allocator<char>&}]’
/home/jonesmz/ozo/include/ozo/io/binary_query.h:50:76: required from ‘ozo::binary_query::binary_query(Text, const Params&, const OidMap&, const Allocator&) [with Text = const char*; Params = boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >; OidMap = ozo::oid_map_t<>; Allocator = std::allocator<char>]’
/home/jonesmz/ozo/tests/binary_query.cpp:17:17: required from ‘auto {anonymous}::make_binary_query(Text&&, const Params&) [with Text = const char (&)[1]; Params = boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >]’
/home/jonesmz/ozo/tests/binary_query.cpp:28:93: required from here
/home/jonesmz/ozo/include/ozo/io/ostream.h:51:25: error: no matching function for call to ‘ozo::ostream::write(ozo::detail::typed_buffer<int>&)’
51 | return write(buf);
| ^
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(const char_type*, std::streamsize)’
25 | ostream& write(const char_type* s, std::streamsize n) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::ostream&> ozo::ostream::write(T)’
36 | Require<Integral<T> && sizeof(T) == 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: template argument deduction/substitution failed:
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/stl_iterator_base_types.h:67,
from /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/iterator:61,
from /usr/include/boost/operators.hpp:98,
from /home/jonesmz/ozo/include/ozo/core/strong_typedef.h:3,
from /home/jonesmz/ozo/include/ozo/type_traits.h:4,
from /home/jonesmz/ozo/include/ozo/ext/std/list.h:3,
from /home/jonesmz/ozo/include/ozo/ext/std.h:11,
from /home/jonesmz/ozo/include/ozo/io/binary_query.h:3,
from /home/jonesmz/ozo/tests/binary_query.cpp:1:
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/type_traits: In substitution of ‘template<bool _Cond, class _Tp> using enable_if_t = typename std::enable_if::type [with bool _Cond = false; _Tp = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/core/concept.h:56:7: required by substitution of ‘template<bool Condition, class Type> using Require = std::enable_if_t<Condition, Type> [with bool Condition = (((bool)ozo::Integral<ozo::detail::typed_buffer<int> >) && (sizeof (ozo::detail::typed_buffer<int>) == 1)); Type = ozo::ostream&]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: required by substitution of ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::ostream&> ozo::ostream::write(T) [with T = ozo::detail::typed_buffer<int>]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:51:25: required from ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {const int&}]’
/home/jonesmz/ozo/include/ozo/io/send.h:56:21: required from ‘static ozo::ostream& ozo::send_impl<In, <template-parameter-1-2> >::apply(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = int; <template-parameter-1-2> = void]’
/home/jonesmz/ozo/include/ozo/io/send.h:94:69: [ skipping 14 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr_base.h:1344:71: required from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >&, const ozo::oid_map_t<>&, const std::allocator<char>&}; _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, ozo::oid_map_t<>, std::allocator<char> >; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr.h:359:59: required from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >&, const ozo::oid_map_t<>&, const std::allocator<char>&}; _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, ozo::oid_map_t<>, std::allocator<char> >]’
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr.h:701:14: required from ‘std::shared_ptr<_Tp> std::allocate_shared(const _Alloc&, _Args&& ...) [with _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, ozo::oid_map_t<>, std::allocator<char> >; _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >&, const ozo::oid_map_t<>&, const std::allocator<char>&}]’
/home/jonesmz/ozo/include/ozo/io/binary_query.h:50:76: required from ‘ozo::binary_query::binary_query(Text, const Params&, const OidMap&, const Allocator&) [with Text = const char*; Params = boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >; OidMap = ozo::oid_map_t<>; Allocator = std::allocator<char>]’
/home/jonesmz/ozo/tests/binary_query.cpp:17:17: required from ‘auto {anonymous}::make_binary_query(Text&&, const Params&) [with Text = const char (&)[1]; Params = boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >]’
/home/jonesmz/ozo/tests/binary_query.cpp:28:93: required from here
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/type_traits:2384:11: error: no type named ‘type’ in ‘struct std::enable_if<false, ozo::ostream&>’
2384 | using enable_if_t = typename enable_if<_Cond, _Tp>::type;
| ^~~~~~~~~~~
In file included from /home/jonesmz/ozo/include/ozo/io/send.h:6,
from /home/jonesmz/ozo/include/ozo/ext/std/nullopt_t.h:5,
from /home/jonesmz/ozo/include/ozo/ext/std.h:12,
from /home/jonesmz/ozo/include/ozo/io/binary_query.h:3,
from /home/jonesmz/ozo/tests/binary_query.cpp:1:
/home/jonesmz/ozo/include/ozo/io/ostream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {const int&}]’
/home/jonesmz/ozo/include/ozo/io/send.h:56:21: required from ‘static ozo::ostream& ozo::send_impl<In, <template-parameter-1-2> >::apply(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = int; <template-parameter-1-2> = void]’
/home/jonesmz/ozo/include/ozo/io/send.h:94:69: required from ‘ozo::ostream& ozo::send(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = int]’
/home/jonesmz/ozo/include/ozo/io/binary_query.h:162:60: required from ‘ozo::binary_query::impl_type<Text, Params, OidMap, Allocator>::impl_type(Text, const Params&, const OidMap&, const Allocator&) [with Text = const char*; Params = boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >; OidMap = ozo::oid_map_t<>; Allocator = std::allocator<char>]::<lambda(auto:20&)> [with auto:20 = const int]’
/usr/include/boost/hana/for_each.hpp:46:45: required from ‘constexpr void boost::hana::detail::on_each<F>::operator()(Xs&& ...) const [with Xs = {const bool&, const int&, const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&}; F = ozo::binary_query::impl_type<Text, Params, OidMap, Allocator>::impl_type(Text, const Params&, const OidMap&, const Allocator&) [with Text = const char*; Params = boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >; OidMap = ozo::oid_map_t<>; Allocator = std::allocator<char>]::<lambda(auto:20&)>*]’
/usr/include/boost/hana/basic_tuple.hpp:115:39: [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr_base.h:1344:71: required from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >&, const ozo::oid_map_t<>&, const std::allocator<char>&}; _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, ozo::oid_map_t<>, std::allocator<char> >; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr.h:359:59: required from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >&, const ozo::oid_map_t<>&, const std::allocator<char>&}; _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, ozo::oid_map_t<>, std::allocator<char> >]’
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr.h:701:14: required from ‘std::shared_ptr<_Tp> std::allocate_shared(const _Alloc&, _Args&& ...) [with _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, ozo::oid_map_t<>, std::allocator<char> >; _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >&, const ozo::oid_map_t<>&, const std::allocator<char>&}]’
/home/jonesmz/ozo/include/ozo/io/binary_query.h:50:76: required from ‘ozo::binary_query::binary_query(Text, const Params&, const OidMap&, const Allocator&) [with Text = const char*; Params = boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >; OidMap = ozo::oid_map_t<>; Allocator = std::allocator<char>]’
/home/jonesmz/ozo/tests/binary_query.cpp:17:17: required from ‘auto {anonymous}::make_binary_query(Text&&, const Params&) [with Text = const char (&)[1]; Params = boost::hana::tuple<bool, int, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >]’
/home/jonesmz/ozo/tests/binary_query.cpp:28:93: required from here
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: candidate: ‘template<class T> ozo::Require<RawDataReadable<T>, ozo::ostream&> ozo::ostream::write(const T&)’
41 | Require<RawDataReadable<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T)’
48 | Require<Integral<T> && sizeof(T) != 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::ostream&> ozo::ostream::write(T)’
55 | Require<FloatingPoint<T>, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(bool)’
59 | ostream& write(bool in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<int>’ to ‘bool’
59 | ostream& write(bool in) {
| ~~~~~^~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: candidate: ‘template<class T> ozo::Require<HanaSequence<T>, ozo::ostream&> ozo::ostream::write(const T&)’
65 | Require<HanaSequence<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::ostream&> ozo::ostream::write(const T&)’
71 | Require<HanaStruct<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = short int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {const short int&}]’
/home/jonesmz/ozo/include/ozo/io/send.h:56:21: required from ‘static ozo::ostream& ozo::send_impl<In, <template-parameter-1-2> >::apply(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = short int; <template-parameter-1-2> = void]’
/home/jonesmz/ozo/include/ozo/io/send.h:94:69: required from ‘ozo::ostream& ozo::send(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<>; In = short int]’
/home/jonesmz/ozo/include/ozo/io/binary_query.h:162:60: required from ‘ozo::binary_query::impl_type<Text, Params, OidMap, Allocator>::impl_type(Text, const Params&, const OidMap&, const Allocator&) [with Text = const char*; Params = boost::hana::tuple<short int>; OidMap = ozo::oid_map_t<>; Allocator = std::allocator<char>]::<lambda(auto:20&)> [with auto:20 = const short int]’
/usr/include/boost/hana/for_each.hpp:46:45: required from ‘constexpr void boost::hana::detail::on_each<F>::operator()(Xs&& ...) const [with Xs = {const short int&}; F = ozo::binary_query::impl_type<Text, Params, OidMap, Allocator>::impl_type(Text, const Params&, const OidMap&, const Allocator&) [with Text = const char*; Params = boost::hana::tuple<short int>; OidMap = ozo::oid_map_t<>; Allocator = std::allocator<char>]::<lambda(auto:20&)>*]’
/usr/include/boost/hana/basic_tuple.hpp:115:39: [ skipping 11 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr_base.h:1344:71: required from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<short int>&, const ozo::oid_map_t<>&, const std::allocator<char>&}; _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<short int>, ozo::oid_map_t<>, std::allocator<char> >; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr.h:359:59: required from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<short int>&, const ozo::oid_map_t<>&, const std::allocator<char>&}; _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<short int>, ozo::oid_map_t<>, std::allocator<char> >]’
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr.h:701:14: required from ‘std::shared_ptr<_Tp> std::allocate_shared(const _Alloc&, _Args&& ...) [with _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<short int>, ozo::oid_map_t<>, std::allocator<char> >; _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<short int>&, const ozo::oid_map_t<>&, const std::allocator<char>&}]’
/home/jonesmz/ozo/include/ozo/io/binary_query.h:50:76: required from ‘ozo::binary_query::binary_query(Text, const Params&, const OidMap&, const Allocator&) [with Text = const char*; Params = boost::hana::tuple<short int>; OidMap = ozo::oid_map_t<>; Allocator = std::allocator<char>]’
/home/jonesmz/ozo/tests/binary_query.cpp:17:17: required from ‘auto {anonymous}::make_binary_query(Text&&, const Params&) [with Text = const char (&)[1]; Params = boost::hana::tuple<short int>]’
/home/jonesmz/ozo/tests/binary_query.cpp:47:78: required from here
/home/jonesmz/ozo/include/ozo/io/ostream.h:51:25: error: no matching function for call to ‘ozo::ostream::write(ozo::detail::typed_buffer<short int>&)’
51 | return write(buf);
| ^
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(const char_type*, std::streamsize)’
25 | ostream& write(const char_type* s, std::streamsize n) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::ostream&> ozo::ostream::write(T)’
36 | Require<Integral<T> && sizeof(T) == 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: candidate: ‘template<class T> ozo::Require<RawDataReadable<T>, ozo::ostream&> ozo::ostream::write(const T&)’
41 | Require<RawDataReadable<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T)’
48 | Require<Integral<T> && sizeof(T) != 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::ostream&> ozo::ostream::write(T)’
55 | Require<FloatingPoint<T>, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(bool)’
59 | ostream& write(bool in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<short int>’ to ‘bool’
59 | ostream& write(bool in) {
| ~~~~~^~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: candidate: ‘template<class T> ozo::Require<HanaSequence<T>, ozo::ostream&> ozo::ostream::write(const T&)’
65 | Require<HanaSequence<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::ostream&> ozo::ostream::write(const T&)’
71 | Require<HanaStruct<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = unsigned int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/io/ostream.h:66:46: required from ‘ozo::ostream::write(const T&) [with T = boost::hana::tuple<int, int, unsigned int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)> [with auto:2 = const unsigned int]’
/usr/include/boost/hana/for_each.hpp:46:45: required from ‘constexpr void boost::hana::detail::on_each<F>::operator()(Xs&& ...) const [with Xs = {const int&, const int&, const unsigned int&}; F = ozo::ostream::write(const T&) [with T = boost::hana::tuple<int, int, unsigned int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)>*]’
/usr/include/boost/hana/basic_tuple.hpp:115:39: required from ‘static constexpr decltype(auto) boost::hana::unpack_impl<boost::hana::basic_tuple_tag>::apply(const boost::hana::detail::basic_tuple_impl<std::integer_sequence<long unsigned int, _Idx ...>, Xn ...>&, F&&) [with long unsigned int ...i = {0, 1, 2}; Xn = {int, int, unsigned int}; F = boost::hana::detail::on_each<ozo::ostream::write(const T&) [with T = boost::hana::tuple<int, int, unsigned int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)>*>]’
/usr/include/boost/hana/unpack.hpp:47:29: required from ‘constexpr decltype(auto) boost::hana::unpack_t::operator()(Xs&&, F&&) const [with Xs = const boost::hana::basic_tuple<int, int, unsigned int>&; F = boost::hana::detail::on_each<ozo::ostream::write(const T&) [with T = boost::hana::tuple<int, int, unsigned int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)>*>]’
/usr/include/boost/hana/tuple.hpp:233:32: required from ‘static constexpr decltype(auto) boost::hana::unpack_impl<boost::hana::tuple_tag>::apply(Xs&&, F&&) [with Xs = const boost::hana::tuple<int, int, unsigned int>&; F = boost::hana::detail::on_each<ozo::ostream::write(const T&) [with T = boost::hana::tuple<int, int, unsigned int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)>*>]’
/usr/include/boost/hana/unpack.hpp:47:29: [ skipping 21 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr_base.h:1344:71: required from ‘std::__shared_ptr<_Tp, _Lp>::__shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<std::vector<int, std::allocator<int> > >&, const ozo::oid_map_t<>&, const std::allocator<char>&}; _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<std::vector<int, std::allocator<int> > >, ozo::oid_map_t<>, std::allocator<char> >; __gnu_cxx::_Lock_policy _Lp = __gnu_cxx::_S_atomic]’
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr.h:359:59: required from ‘std::shared_ptr<_Tp>::shared_ptr(std::_Sp_alloc_shared_tag<_Tp>, _Args&& ...) [with _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<std::vector<int, std::allocator<int> > >&, const ozo::oid_map_t<>&, const std::allocator<char>&}; _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<std::vector<int, std::allocator<int> > >, ozo::oid_map_t<>, std::allocator<char> >]’
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/bits/shared_ptr.h:701:14: required from ‘std::shared_ptr<_Tp> std::allocate_shared(const _Alloc&, _Args&& ...) [with _Tp = ozo::binary_query::impl_type<const char*, boost::hana::tuple<std::vector<int, std::allocator<int> > >, ozo::oid_map_t<>, std::allocator<char> >; _Alloc = std::allocator<char>; _Args = {const char*, const boost::hana::tuple<std::vector<int, std::allocator<int> > >&, const ozo::oid_map_t<>&, const std::allocator<char>&}]’
/home/jonesmz/ozo/include/ozo/io/binary_query.h:50:76: required from ‘ozo::binary_query::binary_query(Text, const Params&, const OidMap&, const Allocator&) [with Text = const char*; Params = boost::hana::tuple<std::vector<int, std::allocator<int> > >; OidMap = ozo::oid_map_t<>; Allocator = std::allocator<char>]’
/home/jonesmz/ozo/tests/binary_query.cpp:17:17: required from ‘auto {anonymous}::make_binary_query(Text&&, const Params&) [with Text = const char (&)[1]; Params = boost::hana::tuple<std::vector<int, std::allocator<int> > >]’
/home/jonesmz/ozo/tests/binary_query.cpp:67:91: required from here
/home/jonesmz/ozo/include/ozo/io/ostream.h:51:25: error: no matching function for call to ‘ozo::ostream::write(ozo::detail::typed_buffer<unsigned int>&)’
51 | return write(buf);
| ^
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(const char_type*, std::streamsize)’
25 | ostream& write(const char_type* s, std::streamsize n) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::ostream&> ozo::ostream::write(T)’
36 | Require<Integral<T> && sizeof(T) == 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: candidate: ‘template<class T> ozo::Require<RawDataReadable<T>, ozo::ostream&> ozo::ostream::write(const T&)’
41 | Require<RawDataReadable<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T)’
48 | Require<Integral<T> && sizeof(T) != 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::ostream&> ozo::ostream::write(T)’
55 | Require<FloatingPoint<T>, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(bool)’
59 | ostream& write(bool in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<unsigned int>’ to ‘bool’
59 | ostream& write(bool in) {
| ~~~~~^~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: candidate: ‘template<class T> ozo::Require<HanaSequence<T>, ozo::ostream&> ozo::ostream::write(const T&)’
65 | Require<HanaSequence<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::ostream&> ozo::ostream::write(const T&)’
71 | Require<HanaStruct<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: template argument deduction/substitution failed:
cc1plus: all warnings being treated as errors
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:180: tests/CMakeFiles/ozo_tests.dir/query_builder.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /home/jonesmz/ozo/include/ozo/io/send.h:6,
from /home/jonesmz/ozo/include/ozo/io/composite.h:4,
from /home/jonesmz/ozo/tests/composite.cpp:5:
/home/jonesmz/ozo/include/ozo/io/ostream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/io/ostream.h:66:46: required from ‘ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)> [with auto:2 = const int]’
/usr/include/boost/hana/for_each.hpp:46:45: required from ‘constexpr void boost::hana::detail::on_each<F>::operator()(Xs&& ...) const [with Xs = {const int&}; F = ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)>*]’
/usr/include/boost/hana/basic_tuple.hpp:115:39: required from ‘static constexpr decltype(auto) boost::hana::unpack_impl<boost::hana::basic_tuple_tag>::apply(const boost::hana::detail::basic_tuple_impl<std::integer_sequence<long unsigned int, _Idx ...>, Xn ...>&, F&&) [with long unsigned int ...i = {0}; Xn = {int}; F = boost::hana::detail::on_each<ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)>*>]’
/usr/include/boost/hana/unpack.hpp:47:29: required from ‘constexpr decltype(auto) boost::hana::unpack_t::operator()(Xs&&, F&&) const [with Xs = const boost::hana::basic_tuple<int>&; F = boost::hana::detail::on_each<ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)>*>]’
/usr/include/boost/hana/tuple.hpp:233:32: required from ‘static constexpr decltype(auto) boost::hana::unpack_impl<boost::hana::tuple_tag>::apply(Xs&&, F&&) [with Xs = const boost::hana::tuple<int>&; F = boost::hana::detail::on_each<ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)>*>]’
/usr/include/boost/hana/unpack.hpp:47:29: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/jonesmz/ozo/include/ozo/io/ostream.h:66:23: required from ‘ozo::Require<HanaSequence<T>, ozo::ostream&> ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:72:39: required from ‘ozo::Require<HanaStruct<T>, ozo::ostream&> ozo::ostream::write(const T&) [with T = ozo::detail::pg_composite; ozo::Require<HanaStruct<T>, ozo::ostream&> = ozo::ostream&]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {ozo::detail::pg_composite}]’
/home/jonesmz/ozo/include/ozo/io/composite.h:80:51: required from ‘static ozo::ostream& ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = fusion_test_struct]’
/home/jonesmz/ozo/include/ozo/io/send.h:94:69: required from ‘ozo::ostream& ozo::send(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; In = fusion_test_struct]’
/home/jonesmz/ozo/tests/composite.cpp:82:29: required from here
/home/jonesmz/ozo/include/ozo/io/ostream.h:51:25: error: no matching function for call to ‘ozo::ostream::write(ozo::detail::typed_buffer<int>&)’
51 | return write(buf);
| ^
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(const char_type*, std::streamsize)’
25 | ostream& write(const char_type* s, std::streamsize n) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::ostream&> ozo::ostream::write(T)’
36 | Require<Integral<T> && sizeof(T) == 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: template argument deduction/substitution failed:
In file included from /usr/include/boost/hana/core/default.hpp:17,
from /usr/include/boost/hana/concept/constant.hpp:16,
from /usr/include/boost/hana/core/to.hpp:15,
from /home/jonesmz/ozo/include/ozo/pg/handle.h:4,
from /home/jonesmz/ozo/include/ozo/impl/result.h:3,
from /home/jonesmz/ozo/include/ozo/result.h:3,
from /home/jonesmz/ozo/tests/result_mock.h:3,
from /home/jonesmz/ozo/tests/composite.cpp:1:
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/type_traits: In substitution of ‘template<bool _Cond, class _Tp> using enable_if_t = typename std::enable_if::type [with bool _Cond = false; _Tp = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/core/concept.h:56:7: required by substitution of ‘template<bool Condition, class Type> using Require = std::enable_if_t<Condition, Type> [with bool Condition = (((bool)ozo::Integral<ozo::detail::typed_buffer<int> >) && (sizeof (ozo::detail::typed_buffer<int>) == 1)); Type = ozo::ostream&]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: required by substitution of ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::ostream&> ozo::ostream::write(T) [with T = ozo::detail::typed_buffer<int>]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:51:25: required from ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:66:46: required from ‘ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)> [with auto:2 = const int]’
/usr/include/boost/hana/for_each.hpp:46:45: required from ‘constexpr void boost::hana::detail::on_each<F>::operator()(Xs&& ...) const [with Xs = {const int&}; F = ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)>*]’
/usr/include/boost/hana/basic_tuple.hpp:115:39: [ skipping 6 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/jonesmz/ozo/include/ozo/io/ostream.h:66:23: required from ‘ozo::Require<HanaSequence<T>, ozo::ostream&> ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:72:39: required from ‘ozo::Require<HanaStruct<T>, ozo::ostream&> ozo::ostream::write(const T&) [with T = ozo::detail::pg_composite; ozo::Require<HanaStruct<T>, ozo::ostream&> = ozo::ostream&]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {ozo::detail::pg_composite}]’
/home/jonesmz/ozo/include/ozo/io/composite.h:80:51: required from ‘static ozo::ostream& ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = fusion_test_struct]’
/home/jonesmz/ozo/include/ozo/io/send.h:94:69: required from ‘ozo::ostream& ozo::send(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; In = fusion_test_struct]’
/home/jonesmz/ozo/tests/composite.cpp:82:29: required from here
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/type_traits:2384:11: error: no type named ‘type’ in ‘struct std::enable_if<false, ozo::ostream&>’
2384 | using enable_if_t = typename enable_if<_Cond, _Tp>::type;
| ^~~~~~~~~~~
In file included from /home/jonesmz/ozo/include/ozo/io/send.h:6,
from /home/jonesmz/ozo/include/ozo/io/composite.h:4,
from /home/jonesmz/ozo/tests/composite.cpp:5:
/home/jonesmz/ozo/include/ozo/io/ostream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/io/ostream.h:66:46: required from ‘ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)> [with auto:2 = const int]’
/usr/include/boost/hana/for_each.hpp:46:45: required from ‘constexpr void boost::hana::detail::on_each<F>::operator()(Xs&& ...) const [with Xs = {const int&}; F = ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)>*]’
/usr/include/boost/hana/basic_tuple.hpp:115:39: required from ‘static constexpr decltype(auto) boost::hana::unpack_impl<boost::hana::basic_tuple_tag>::apply(const boost::hana::detail::basic_tuple_impl<std::integer_sequence<long unsigned int, _Idx ...>, Xn ...>&, F&&) [with long unsigned int ...i = {0}; Xn = {int}; F = boost::hana::detail::on_each<ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)>*>]’
/usr/include/boost/hana/unpack.hpp:47:29: required from ‘constexpr decltype(auto) boost::hana::unpack_t::operator()(Xs&&, F&&) const [with Xs = const boost::hana::basic_tuple<int>&; F = boost::hana::detail::on_each<ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)>*>]’
/usr/include/boost/hana/tuple.hpp:233:32: required from ‘static constexpr decltype(auto) boost::hana::unpack_impl<boost::hana::tuple_tag>::apply(Xs&&, F&&) [with Xs = const boost::hana::tuple<int>&; F = boost::hana::detail::on_each<ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]::<lambda(auto:2&)>*>]’
/usr/include/boost/hana/unpack.hpp:47:29: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/jonesmz/ozo/include/ozo/io/ostream.h:66:23: required from ‘ozo::Require<HanaSequence<T>, ozo::ostream&> ozo::ostream::write(const T&) [with T = boost::hana::tuple<int>; ozo::Require<HanaSequence<T>, ozo::ostream&> = ozo::ostream&]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:72:39: required from ‘ozo::Require<HanaStruct<T>, ozo::ostream&> ozo::ostream::write(const T&) [with T = ozo::detail::pg_composite; ozo::Require<HanaStruct<T>, ozo::ostream&> = ozo::ostream&]’
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {ozo::detail::pg_composite}]’
/home/jonesmz/ozo/include/ozo/io/composite.h:80:51: required from ‘static ozo::ostream& ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = fusion_test_struct]’
/home/jonesmz/ozo/include/ozo/io/send.h:94:69: required from ‘ozo::ostream& ozo::send(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; In = fusion_test_struct]’
/home/jonesmz/ozo/tests/composite.cpp:82:29: required from here
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: candidate: ‘template<class T> ozo::Require<RawDataReadable<T>, ozo::ostream&> ozo::ostream::write(const T&)’
41 | Require<RawDataReadable<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T)’
48 | Require<Integral<T> && sizeof(T) != 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::ostream&> ozo::ostream::write(T)’
55 | Require<FloatingPoint<T>, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(bool)’
59 | ostream& write(bool in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<int>’ to ‘bool’
59 | ostream& write(bool in) {
| ~~~~~^~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: candidate: ‘template<class T> ozo::Require<HanaSequence<T>, ozo::ostream&> ozo::ostream::write(const T&)’
65 | Require<HanaSequence<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::ostream&> ozo::ostream::write(const T&)’
71 | Require<HanaStruct<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = unsigned int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {unsigned int}]’
/home/jonesmz/ozo/include/ozo/io/send.h:132:10: required from ‘ozo::ostream& ozo::send_frame(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; In = std::__cxx11::basic_string<char>]’
/home/jonesmz/ozo/include/ozo/io/composite.h:82:23: required from ‘ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct]::<lambda(const auto:10&)> [with auto:10 = std::__cxx11::basic_string<char>]’
/usr/include/boost/hana/for_each.hpp:46:45: required from ‘constexpr void boost::hana::detail::on_each<F>::operator()(Xs&& ...) const [with Xs = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, long int}; F = ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct]::<lambda(const auto:10&)>*]’
/usr/include/boost/hana/basic_tuple.hpp:135:39: required from ‘static constexpr decltype(auto) boost::hana::unpack_impl<boost::hana::basic_tuple_tag>::apply(boost::hana::detail::basic_tuple_impl<std::integer_sequence<long unsigned int, _Idx ...>, Xn ...>&&, F&&) [with long unsigned int ...i = {0, 1}; Xn = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, long int}; F = boost::hana::detail::on_each<ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct]::<lambda(const auto:10&)>*>]’
/usr/include/boost/hana/unpack.hpp:47:29: [ skipping 3 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/boost/hana/for_each.hpp:56:25: required from ‘static constexpr void boost::hana::for_each_impl<T, boost::hana::when<condition> >::apply(Xs&&, F&&) [with Xs = boost::hana::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, long int>; F = ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct]::<lambda(const auto:10&)>; T = boost::hana::tuple_tag; bool condition = true]’
/usr/include/boost/hana/for_each.hpp:35:30: required from ‘constexpr void boost::hana::for_each_t::operator()(Xs&&, F&&) const [with Xs = boost::hana::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, long int>; F = ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct]::<lambda(const auto:10&)>]’
/home/jonesmz/ozo/include/ozo/io/composite.h:70:19: required from ‘constexpr ozo::Require<HanaStruct<T> > ozo::detail::for_each_member(T&&, Func&&) [with T = const hana_test_struct&; Func = ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct]::<lambda(const auto:10&)>; ozo::Require<HanaStruct<T> > = void]’
/home/jonesmz/ozo/include/ozo/io/composite.h:81:24: required from ‘static ozo::ostream& ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct]’
/home/jonesmz/ozo/include/ozo/io/send.h:94:69: required from ‘ozo::ostream& ozo::send(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; In = hana_test_struct]’
/home/jonesmz/ozo/tests/composite.cpp:99:29: required from here
/home/jonesmz/ozo/include/ozo/io/ostream.h:51:25: error: no matching function for call to ‘ozo::ostream::write(ozo::detail::typed_buffer<unsigned int>&)’
51 | return write(buf);
| ^
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(const char_type*, std::streamsize)’
25 | ostream& write(const char_type* s, std::streamsize n) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::ostream&> ozo::ostream::write(T)’
36 | Require<Integral<T> && sizeof(T) == 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: candidate: ‘template<class T> ozo::Require<RawDataReadable<T>, ozo::ostream&> ozo::ostream::write(const T&)’
41 | Require<RawDataReadable<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T)’
48 | Require<Integral<T> && sizeof(T) != 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::ostream&> ozo::ostream::write(T)’
55 | Require<FloatingPoint<T>, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(bool)’
59 | ostream& write(bool in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<unsigned int>’ to ‘bool’
59 | ostream& write(bool in) {
| ~~~~~^~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: candidate: ‘template<class T> ozo::Require<HanaSequence<T>, ozo::ostream&> ozo::ostream::write(const T&)’
65 | Require<HanaSequence<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::ostream&> ozo::ostream::write(const T&)’
71 | Require<HanaStruct<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: template argument deduction/substitution failed:
In file included from /home/jonesmz/ozo/include/ozo/impl/async_request.h:9,
from /home/jonesmz/ozo/include/ozo/impl/request_oid_map.h:3,
from /home/jonesmz/ozo/include/ozo/impl/async_connect.h:7,
from /home/jonesmz/ozo/include/ozo/connection_info.h:5,
from /home/jonesmz/ozo/tests/connection_pool.cpp:4:
/home/jonesmz/ozo/include/ozo/query_builder.h:187:16: error: ISO C++ did not adopt string literal operator templates taking an argument pack of characters [-Werror=pedantic]
187 | constexpr auto operator "" _SQL() {
| ^~~~~~~~
In file included from /home/jonesmz/ozo/include/ozo/io/type_traits.h:3,
from /home/jonesmz/ozo/include/ozo/io/send.h:7,
from /home/jonesmz/ozo/include/ozo/io/composite.h:4,
from /home/jonesmz/ozo/tests/composite.cpp:5:
/home/jonesmz/ozo/include/ozo/io/istream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&) [with T = unsigned int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> = ozo::istream&]’:
/home/jonesmz/ozo/include/ozo/io/istream.h:107:9: required from ‘ozo::istream& ozo::read(ozo::istream&, Ts&& ...) [with Ts = {unsigned int&}]’
/home/jonesmz/ozo/include/ozo/io/recv.h:244:17: required from ‘ozo::istream& ozo::recv_frame(ozo::istream&, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Out = std::__cxx11::basic_string<char>
’
/home/jonesmz/ozo/include/ozo/io/composite.h:121:23: required from ‘ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]::<lambda(auto:12)> [with auto:12 = boost::hana::string<'s', 't', 'r', 'i', 'n', 'g'>]’
/usr/include/boost/hana/for_each.hpp:46:45: required from ‘constexpr void boost::hana::detail::on_each<F>::operator()(Xs&& ...) const [with Xs = {boost::hana::string<'s', 't', 'r', 'i', 'n', 'g'>, boost::hana::string<'n', 'u', 'm', 'b', 'e', 'r'>}; F = ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]::<lambda(auto:12)>*]’
/usr/include/boost/hana/basic_tuple.hpp:135:39: required from ‘static constexpr decltype(auto) boost::hana::unpack_impl<boost::hana::basic_tuple_tag>::apply(boost::hana::detail::basic_tuple_impl<std::integer_sequence<long unsigned int, _Idx ...>, Xn ...>&&, F&&) [with long unsigned int ...i = {0, 1}; Xn = {boost::hana::string<'s', 't', 'r', 'i', 'n', 'g'>, boost::hana::string<'n', 'u', 'm', 'b', 'e', 'r'>}; F = boost::hana::detail::on_each<ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]::<lambda(auto:12)>*>]’
/usr/include/boost/hana/unpack.hpp:47:29: [ skipping 4 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/boost/hana/for_each.hpp:35:30: required from ‘constexpr void boost::hana::for_each_t::operator()(Xs&&, F&&) const [with Xs = boost::hana::tuple<boost::hana::string<'s', 't', 'r', 'i', 'n', 'g'>, boost::hana::string<'n', 'u', 'm', 'b', 'e', 'r'> >; F = ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]::<lambda(auto:12)>]’
/home/jonesmz/ozo/include/ozo/io/composite.h:120:23: required from ‘static ozo::istream& ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:160:45: required from ‘ozo::istream& ozo::detail::recv(ozo::istream&, Oid, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Oid = unsigned int; Out = hana_test_struct; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:201:24: required from ‘ozo::istream& ozo::recv(ozo::istream&, ozo::oid_t, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Out = hana_test_struct; ozo::oid_t = unsigned int; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:251:9: required from ‘void ozo::recv(const ozo::value<Result>&, const OidMap&, Out&) [with T = ozo::tests::pg_result_mock; OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Out = hana_test_struct]’
/home/jonesmz/ozo/tests/composite.cpp:218:34: required from here
/home/jonesmz/ozo/include/ozo/io/istream.h:72:9: error: no matching function for call to ‘ozo::istream::read(ozo::detail::typed_buffer<unsigned int>&)’
72 | read(buf);
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:38:14: note: candidate: ‘ozo::istream& ozo::istream::read(ozo::istream::char_type*, std::streamsize)’
38 | istream& read(char_type* buf, std::streamsize len) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:38:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: note: candidate: ‘template<class T> ozo::Require<RawDataWritable<T>, ozo::istream&> ozo::istream::read(T&)’
57 | Require<RawDataWritable<T>, istream&> read(T& out) {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: note: template argument deduction/substitution failed:
In file included from /usr/include/boost/hana/core/default.hpp:17,
from /usr/include/boost/hana/concept/constant.hpp:16,
from /usr/include/boost/hana/core/to.hpp:15,
from /home/jonesmz/ozo/include/ozo/pg/handle.h:4,
from /home/jonesmz/ozo/include/ozo/impl/result.h:3,
from /home/jonesmz/ozo/include/ozo/result.h:3,
from /home/jonesmz/ozo/tests/result_mock.h:3,
from /home/jonesmz/ozo/tests/composite.cpp:1:
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/type_traits: In substitution of ‘template<bool _Cond, class _Tp> using enable_if_t = typename std::enable_if::type [with bool _Cond = false; _Tp = ozo::istream&]’:
/home/jonesmz/ozo/include/ozo/core/concept.h:56:7: required by substitution of ‘template<bool Condition, class Type> using Require = std::enable_if_t<Condition, Type> [with bool Condition = ozo::RawDataWritable<ozo::detail::typed_buffer<unsigned int> >; Type = ozo::istream&]’
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: required by substitution of ‘template<class T> ozo::Require<RawDataWritable<T>, ozo::istream&> ozo::istream::read(T&) [with T = ozo::detail::typed_buffer<unsigned int>]’
/home/jonesmz/ozo/include/ozo/io/istream.h:72:9: required from ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&) [with T = unsigned int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> = ozo::istream&]’
/home/jonesmz/ozo/include/ozo/io/istream.h:107:9: required from ‘ozo::istream& ozo::read(ozo::istream&, Ts&& ...) [with Ts = {unsigned int&}]’
/home/jonesmz/ozo/include/ozo/io/recv.h:244:17: required from ‘ozo::istream& ozo::recv_frame(ozo::istream&, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Out = std::__cxx11::basic_string<char>
’
/home/jonesmz/ozo/include/ozo/io/composite.h:121:23: [ skipping 7 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/boost/hana/for_each.hpp:35:30: required from ‘constexpr void boost::hana::for_each_t::operator()(Xs&&, F&&) const [with Xs = boost::hana::tuple<boost::hana::string<'s', 't', 'r', 'i', 'n', 'g'>, boost::hana::string<'n', 'u', 'm', 'b', 'e', 'r'> >; F = ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]::<lambda(auto:12)>]’
/home/jonesmz/ozo/include/ozo/io/composite.h:120:23: required from ‘static ozo::istream& ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:160:45: required from ‘ozo::istream& ozo::detail::recv(ozo::istream&, Oid, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Oid = unsigned int; Out = hana_test_struct; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:201:24: required from ‘ozo::istream& ozo::recv(ozo::istream&, ozo::oid_t, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Out = hana_test_struct; ozo::oid_t = unsigned int; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:251:9: required from ‘void ozo::recv(const ozo::value<Result>&, const OidMap&, Out&) [with T = ozo::tests::pg_result_mock; OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Out = hana_test_struct]’
/home/jonesmz/ozo/tests/composite.cpp:218:34: required from here
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/type_traits:2384:11: error: no type named ‘type’ in ‘struct std::enable_if<false, ozo::istream&>’
2384 | using enable_if_t = typename enable_if<_Cond, _Tp>::type;
| ^~~~~~~~~~~
In file included from /home/jonesmz/ozo/include/ozo/io/type_traits.h:3,
from /home/jonesmz/ozo/include/ozo/io/send.h:7,
from /home/jonesmz/ozo/include/ozo/io/composite.h:4,
from /home/jonesmz/ozo/tests/composite.cpp:5:
/home/jonesmz/ozo/include/ozo/io/istream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&) [with T = unsigned int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> = ozo::istream&]’:
/home/jonesmz/ozo/include/ozo/io/istream.h:107:9: required from ‘ozo::istream& ozo::read(ozo::istream&, Ts&& ...) [with Ts = {unsigned int&}]’
/home/jonesmz/ozo/include/ozo/io/recv.h:244:17: required from ‘ozo::istream& ozo::recv_frame(ozo::istream&, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Out = std::__cxx11::basic_string<char>
’
/home/jonesmz/ozo/include/ozo/io/composite.h:121:23: required from ‘ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]::<lambda(auto:12)> [with auto:12 = boost::hana::string<'s', 't', 'r', 'i', 'n', 'g'>]’
/usr/include/boost/hana/for_each.hpp:46:45: required from ‘constexpr void boost::hana::detail::on_each<F>::operator()(Xs&& ...) const [with Xs = {boost::hana::string<'s', 't', 'r', 'i', 'n', 'g'>, boost::hana::string<'n', 'u', 'm', 'b', 'e', 'r'>}; F = ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]::<lambda(auto:12)>*]’
/usr/include/boost/hana/basic_tuple.hpp:135:39: required from ‘static constexpr decltype(auto) boost::hana::unpack_impl<boost::hana::basic_tuple_tag>::apply(boost::hana::detail::basic_tuple_impl<std::integer_sequence<long unsigned int, _Idx ...>, Xn ...>&&, F&&) [with long unsigned int ...i = {0, 1}; Xn = {boost::hana::string<'s', 't', 'r', 'i', 'n', 'g'>, boost::hana::string<'n', 'u', 'm', 'b', 'e', 'r'>}; F = boost::hana::detail::on_each<ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]::<lambda(auto:12)>*>]’
/usr/include/boost/hana/unpack.hpp:47:29: [ skipping 4 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/boost/hana/for_each.hpp:35:30: required from ‘constexpr void boost::hana::for_each_t::operator()(Xs&&, F&&) const [with Xs = boost::hana::tuple<boost::hana::string<'s', 't', 'r', 'i', 'n', 'g'>, boost::hana::string<'n', 'u', 'm', 'b', 'e', 'r'> >; F = ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]::<lambda(auto:12)>]’
/home/jonesmz/ozo/include/ozo/io/composite.h:120:23: required from ‘static ozo::istream& ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:160:45: required from ‘ozo::istream& ozo::detail::recv(ozo::istream&, Oid, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Oid = unsigned int; Out = hana_test_struct; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:201:24: required from ‘ozo::istream& ozo::recv(ozo::istream&, ozo::oid_t, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Out = hana_test_struct; ozo::oid_t = unsigned int; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:251:9: required from ‘void ozo::recv(const ozo::value<Result>&, const OidMap&, Out&) [with T = ozo::tests::pg_result_mock; OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Out = hana_test_struct]’
/home/jonesmz/ozo/tests/composite.cpp:218:34: required from here
/home/jonesmz/ozo/include/ozo/io/istream.h:64:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::istream&> ozo::istream::read(T&)’
64 | Require<Integral<T> && sizeof(T) == 1, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:64:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:70:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&)’
70 | Require<Integral<T> && sizeof(T) != 1, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:70:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:78:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::istream&> ozo::istream::read(T&)’
78 | Require<FloatingPoint<T>, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:78:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:85:14: note: candidate: ‘ozo::istream& ozo::istream::read(bool&)’
85 | istream& read(bool& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:85:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<unsigned int>’ to ‘bool&’
85 | istream& read(bool& out) noexcept {
| ~~~~~~^~~
/home/jonesmz/ozo/include/ozo/io/istream.h:93:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::istream&> ozo::istream::read(T&)’
93 | Require<HanaStruct<T>, istream&> read(T& out) {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:93:38: note: template argument deduction/substitution failed:
In file included from /home/jonesmz/ozo/include/ozo/io/send.h:6,
from /home/jonesmz/ozo/include/ozo/io/composite.h:4,
from /home/jonesmz/ozo/tests/composite.cpp:5:
/home/jonesmz/ozo/include/ozo/io/ostream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T) [with T = long int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> = ozo::ostream&]’:
/home/jonesmz/ozo/include/ozo/io/ostream.h:81:45: required from ‘ozo::ostream& ozo::write(ozo::ostream&, Ts&& ...) [with Ts = {const long int&}]’
/home/jonesmz/ozo/include/ozo/io/send.h:56:21: required from ‘static ozo::ostream& ozo::send_impl<In, <template-parameter-1-2> >::apply(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; In = long int; <template-parameter-1-2> = void]’
/home/jonesmz/ozo/include/ozo/io/send.h:94:69: required from ‘ozo::ostream& ozo::send(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; In = long int]’
/home/jonesmz/ozo/include/ozo/io/send.h:113:16: required from ‘ozo::ostream& ozo::send_data_frame(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; In = long int]’
/home/jonesmz/ozo/include/ozo/io/send.h:133:27: required from ‘ozo::ostream& ozo::send_frame(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; In = long int]’
/home/jonesmz/ozo/include/ozo/io/composite.h:82:23: [ skipping 6 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/boost/hana/for_each.hpp:56:25: required from ‘static constexpr void boost::hana::for_each_impl<T, boost::hana::when<condition> >::apply(Xs&&, F&&) [with Xs = boost::hana::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, long int>; F = ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct]::<lambda(const auto:10&)>; T = boost::hana::tuple_tag; bool condition = true]’
/usr/include/boost/hana/for_each.hpp:35:30: required from ‘constexpr void boost::hana::for_each_t::operator()(Xs&&, F&&) const [with Xs = boost::hana::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, long int>; F = ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct]::<lambda(const auto:10&)>]’
/home/jonesmz/ozo/include/ozo/io/composite.h:70:19: required from ‘constexpr ozo::Require<HanaStruct<T> > ozo::detail::for_each_member(T&&, Func&&) [with T = const hana_test_struct&; Func = ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct]::<lambda(const auto:10&)>; ozo::Require<HanaStruct<T> > = void]’
/home/jonesmz/ozo/include/ozo/io/composite.h:81:24: required from ‘static ozo::ostream& ozo::detail::send_composite_impl<T>::apply(ozo::ostream&, const OidMap&, const T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct]’
/home/jonesmz/ozo/include/ozo/io/send.h:94:69: required from ‘ozo::ostream& ozo::send(ozo::ostream&, const OidMap&, const In&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; In = hana_test_struct]’
/home/jonesmz/ozo/tests/composite.cpp:99:29: required from here
/home/jonesmz/ozo/include/ozo/io/ostream.h:51:25: error: no matching function for call to ‘ozo::ostream::write(ozo::detail::typed_buffer<long int>&)’
51 | return write(buf);
| ^
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(const char_type*, std::streamsize)’
25 | ostream& write(const char_type* s, std::streamsize n) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:25:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::ostream&> ozo::ostream::write(T)’
36 | Require<Integral<T> && sizeof(T) == 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:36:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: candidate: ‘template<class T> ozo::Require<RawDataReadable<T>, ozo::ostream&> ozo::ostream::write(const T&)’
41 | Require<RawDataReadable<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:41:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::ostream&> ozo::ostream::write(T)’
48 | Require<Integral<T> && sizeof(T) != 1, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:48:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::ostream&> ozo::ostream::write(T)’
55 | Require<FloatingPoint<T>, ostream&> write(T in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:55:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:14: note: candidate: ‘ozo::ostream& ozo::ostream::write(bool)’
59 | ostream& write(bool in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:59:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<long int>’ to ‘bool’
59 | ostream& write(bool in) {
| ~~~~~^~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: candidate: ‘template<class T> ozo::Require<HanaSequence<T>, ozo::ostream&> ozo::ostream::write(const T&)’
65 | Require<HanaSequence<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:65:40: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::ostream&> ozo::ostream::write(const T&)’
71 | Require<HanaStruct<T>, ostream&> write(const T& in) {
| ^~~~~
/home/jonesmz/ozo/include/ozo/io/ostream.h:71:38: note: template argument deduction/substitution failed:
In file included from /home/jonesmz/ozo/include/ozo/io/type_traits.h:3,
from /home/jonesmz/ozo/include/ozo/io/send.h:7,
from /home/jonesmz/ozo/include/ozo/io/array.h:4,
from /home/jonesmz/ozo/tests/binary_deserialization.cpp:3:
/home/jonesmz/ozo/include/ozo/io/istream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&) [with T = long int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> = ozo::istream&]’:
/home/jonesmz/ozo/include/ozo/io/istream.h:107:9: required from ‘ozo::istream& ozo::read(ozo::istream&, Ts&& ...) [with Ts = {long int&}]’
/home/jonesmz/ozo/tests/binary_deserialization.cpp:46:5: required from here
/home/jonesmz/ozo/include/ozo/io/istream.h:72:9: error: no matching function for call to ‘ozo::istream::read(ozo::detail::typed_buffer<long int>&)’
72 | read(buf);
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:38:14: note: candidate: ‘ozo::istream& ozo::istream::read(ozo::istream::char_type*, std::streamsize)’
38 | istream& read(char_type* buf, std::streamsize len) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:38:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: note: candidate: ‘template<class T> ozo::Require<RawDataWritable<T>, ozo::istream&> ozo::istream::read(T&)’
57 | Require<RawDataWritable<T>, istream&> read(T& out) {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: note: template argument deduction/substitution failed:
In file included from /usr/include/boost/hana/core/default.hpp:17,
from /usr/include/boost/hana/concept/constant.hpp:16,
from /usr/include/boost/hana/core/to.hpp:15,
from /home/jonesmz/ozo/include/ozo/pg/handle.h:4,
from /home/jonesmz/ozo/include/ozo/impl/result.h:3,
from /home/jonesmz/ozo/include/ozo/result.h:3,
from /home/jonesmz/ozo/tests/result_mock.h:3,
from /home/jonesmz/ozo/tests/binary_deserialization.cpp:1:
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/type_traits: In substitution of ‘template<bool _Cond, class _Tp> using enable_if_t = typename std::enable_if::type [with bool _Cond = false; _Tp = ozo::istream&]’:
/home/jonesmz/ozo/include/ozo/core/concept.h:56:7: required by substitution of ‘template<bool Condition, class Type> using Require = std::enable_if_t<Condition, Type> [with bool Condition = ozo::RawDataWritable<ozo::detail::typed_buffer<long int> >; Type = ozo::istream&]’
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: required by substitution of ‘template<class T> ozo::Require<RawDataWritable<T>, ozo::istream&> ozo::istream::read(T&) [with T = ozo::detail::typed_buffer<long int>]’
/home/jonesmz/ozo/include/ozo/io/istream.h:72:9: required from ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&) [with T = long int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> = ozo::istream&]’
/home/jonesmz/ozo/include/ozo/io/istream.h:107:9: required from ‘ozo::istream& ozo::read(ozo::istream&, Ts&& ...) [with Ts = {long int&}]’
/home/jonesmz/ozo/tests/binary_deserialization.cpp:46:5: required from here
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/include/g++-v9/type_traits:2384:11: error: no type named ‘type’ in ‘struct std::enable_if<false, ozo::istream&>’
2384 | using enable_if_t = typename enable_if<_Cond, _Tp>::type;
| ^~~~~~~~~~~
In file included from /home/jonesmz/ozo/include/ozo/io/type_traits.h:3,
from /home/jonesmz/ozo/include/ozo/io/send.h:7,
from /home/jonesmz/ozo/include/ozo/io/array.h:4,
from /home/jonesmz/ozo/tests/binary_deserialization.cpp:3:
/home/jonesmz/ozo/include/ozo/io/istream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&) [with T = long int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> = ozo::istream&]’:
/home/jonesmz/ozo/include/ozo/io/istream.h:107:9: required from ‘ozo::istream& ozo::read(ozo::istream&, Ts&& ...) [with Ts = {long int&}]’
/home/jonesmz/ozo/tests/binary_deserialization.cpp:46:5: required from here
/home/jonesmz/ozo/include/ozo/io/istream.h:64:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::istream&> ozo::istream::read(T&)’
64 | Require<Integral<T> && sizeof(T) == 1, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:64:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:70:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&)’
70 | Require<Integral<T> && sizeof(T) != 1, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:70:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:78:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::istream&> ozo::istream::read(T&)’
78 | Require<FloatingPoint<T>, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:78:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:85:14: note: candidate: ‘ozo::istream& ozo::istream::read(bool&)’
85 | istream& read(bool& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:85:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<long int>’ to ‘bool&’
85 | istream& read(bool& out) noexcept {
| ~~~~~~^~~
/home/jonesmz/ozo/include/ozo/io/istream.h:93:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::istream&> ozo::istream::read(T&)’
93 | Require<HanaStruct<T>, istream&> read(T& out) {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:93:38: note: template argument deduction/substitution failed:
In file included from /home/jonesmz/ozo/include/ozo/io/type_traits.h:3,
from /home/jonesmz/ozo/include/ozo/io/send.h:7,
from /home/jonesmz/ozo/include/ozo/io/composite.h:4,
from /home/jonesmz/ozo/tests/composite.cpp:5:
/home/jonesmz/ozo/include/ozo/io/istream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&) [with T = long int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> = ozo::istream&]’:
/home/jonesmz/ozo/include/ozo/io/istream.h:107:9: required from ‘ozo::istream& ozo::read(ozo::istream&, Ts&& ...) [with Ts = {long int&}]’
/home/jonesmz/ozo/include/ozo/io/recv.h:121:20: required from ‘static ozo::istream& ozo::recv_impl<Out, <template-parameter-1-2> >::apply(ozo::istream&, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Out = long int; <template-parameter-1-2> = void; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:160:45: required from ‘ozo::istream& ozo::detail::recv(ozo::istream&, Oid, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Oid = unsigned int; Out = long int; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:201:24: required from ‘ozo::istream& ozo::recv(ozo::istream&, ozo::oid_t, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Out = long int; ozo::oid_t = unsigned int; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:167:16: required from ‘ozo::istream& ozo::detail::recv_data_frame(ozo::istream&, Oid, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Oid = unsigned int; Out = long int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:245:35: [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/boost/hana/for_each.hpp:35:30: required from ‘constexpr void boost::hana::for_each_t::operator()(Xs&&, F&&) const [with Xs = boost::hana::tuple<boost::hana::string<'s', 't', 'r', 'i', 'n', 'g'>, boost::hana::string<'n', 'u', 'm', 'b', 'e', 'r'> >; F = ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]::<lambda(auto:12)>]’
/home/jonesmz/ozo/include/ozo/io/composite.h:120:23: required from ‘static ozo::istream& ozo::detail::recv_hana_adapted_composite_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, T&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; T = hana_test_struct; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:160:45: required from ‘ozo::istream& ozo::detail::recv(ozo::istream&, Oid, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Oid = unsigned int; Out = hana_test_struct; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:201:24: required from ‘ozo::istream& ozo::recv(ozo::istream&, ozo::oid_t, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Out = hana_test_struct; ozo::oid_t = unsigned int; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:251:9: required from ‘void ozo::recv(const ozo::value<Result>&, const OidMap&, Out&) [with T = ozo::tests::pg_result_mock; OidMap = ozo::oid_map_t<fusion_test_struct, hana_test_struct>; Out = hana_test_struct]’
/home/jonesmz/ozo/tests/composite.cpp:218:34: required from here
/home/jonesmz/ozo/include/ozo/io/istream.h:72:9: error: no matching function for call to ‘ozo::istream::read(ozo::detail::typed_buffer<long int>&)’
72 | read(buf);
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:38:14: note: candidate: ‘ozo::istream& ozo::istream::read(ozo::istream::char_type*, std::streamsize)’
38 | istream& read(char_type* buf, std::streamsize len) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:38:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: note: candidate: ‘template<class T> ozo::Require<RawDataWritable<T>, ozo::istream&> ozo::istream::read(T&)’
57 | Require<RawDataWritable<T>, istream&> read(T& out) {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:64:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::istream&> ozo::istream::read(T&)’
64 | Require<Integral<T> && sizeof(T) == 1, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:64:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:70:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&)’
70 | Require<Integral<T> && sizeof(T) != 1, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:70:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:78:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::istream&> ozo::istream::read(T&)’
78 | Require<FloatingPoint<T>, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:78:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:85:14: note: candidate: ‘ozo::istream& ozo::istream::read(bool&)’
85 | istream& read(bool& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:85:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<long int>’ to ‘bool&’
85 | istream& read(bool& out) noexcept {
| ~~~~~~^~~
/home/jonesmz/ozo/include/ozo/io/istream.h:93:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::istream&> ozo::istream::read(T&)’
93 | Require<HanaStruct<T>, istream&> read(T& out) {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:93:38: note: template argument deduction/substitution failed:
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:102: tests/CMakeFiles/ozo_tests.dir/binary_serialization.cpp.o] Error 1
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:89: tests/CMakeFiles/ozo_tests.dir/binary_query.cpp.o] Error 1
In file included from /home/jonesmz/ozo/include/ozo/impl/async_request.h:9,
from /home/jonesmz/ozo/tests/impl/async_get_result.cpp:4:
/home/jonesmz/ozo/include/ozo/query_builder.h:187:16: error: ISO C++ did not adopt string literal operator templates taking an argument pack of characters [-Werror=pedantic]
187 | constexpr auto operator "" _SQL() {
| ^~~~~~~~
In file included from /home/jonesmz/ozo/include/ozo/impl/async_request.h:9,
from /home/jonesmz/ozo/include/ozo/impl/request_oid_map.h:3,
from /home/jonesmz/ozo/include/ozo/impl/async_connect.h:7,
from /home/jonesmz/ozo/tests/impl/async_connect.cpp:4:
/home/jonesmz/ozo/include/ozo/query_builder.h:187:16: error: ISO C++ did not adopt string literal operator templates taking an argument pack of characters [-Werror=pedantic]
187 | constexpr auto operator "" _SQL() {
| ^~~~~~~~
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:128: tests/CMakeFiles/ozo_tests.dir/composite.cpp.o] Error 1
/home/jonesmz/ozo/include/ozo/io/istream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&) [with T = int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> = ozo::istream&]’:
/home/jonesmz/ozo/include/ozo/io/istream.h:107:9: required from ‘ozo::istream& ozo::read(ozo::istream&, Ts&& ...) [with Ts = {int&}]’
/home/jonesmz/ozo/include/ozo/io/recv.h:121:20: required from ‘static ozo::istream& ozo::recv_impl<Out, <template-parameter-1-2> >::apply(ozo::istream&, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<>; Out = int; <template-parameter-1-2> = void; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:160:45: required from ‘ozo::istream& ozo::detail::recv(ozo::istream&, Oid, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<>; Oid = unsigned int; Out = int; ozo::size_type = int
’
/home/jonesmz/ozo/include/ozo/io/recv.h:201:24: required from ‘ozo::istream& ozo::recv(ozo::istream&, ozo::oid_t, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<>; Out = int; ozo::oid_t = unsigned int; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:251:9: required from ‘void ozo::recv(const ozo::value<Result>&, const OidMap&, Out&) [with T = ozo::tests::pg_result_mock; OidMap = ozo::oid_map_t<>; Out = int]’
/home/jonesmz/ozo/tests/binary_deserialization.cpp:66:5: required from here
/home/jonesmz/ozo/include/ozo/io/istream.h:72:9: error: no matching function for call to ‘ozo::istream::read(ozo::detail::typed_buffer<int>&)’
72 | read(buf);
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:38:14: note: candidate: ‘ozo::istream& ozo::istream::read(ozo::istream::char_type*, std::streamsize)’
38 | istream& read(char_type* buf, std::streamsize len) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:38:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: note: candidate: ‘template<class T> ozo::Require<RawDataWritable<T>, ozo::istream&> ozo::istream::read(T&)’
57 | Require<RawDataWritable<T>, istream&> read(T& out) {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:64:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::istream&> ozo::istream::read(T&)’
64 | Require<Integral<T> && sizeof(T) == 1, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:64:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:70:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&)’
70 | Require<Integral<T> && sizeof(T) != 1, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:70:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:78:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::istream&> ozo::istream::read(T&)’
78 | Require<FloatingPoint<T>, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:78:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:85:14: note: candidate: ‘ozo::istream& ozo::istream::read(bool&)’
85 | istream& read(bool& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:85:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<int>’ to ‘bool&’
85 | istream& read(bool& out) noexcept {
| ~~~~~~^~~
/home/jonesmz/ozo/include/ozo/io/istream.h:93:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::istream&> ozo::istream::read(T&)’
93 | Require<HanaStruct<T>, istream&> read(T& out) {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:93:38: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&) [with T = short int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> = ozo::istream&]’:
/home/jonesmz/ozo/include/ozo/io/istream.h:107:9: required from ‘ozo::istream& ozo::read(ozo::istream&, Ts&& ...) [with Ts = {short int&}]’
/home/jonesmz/ozo/include/ozo/io/recv.h:121:20: required from ‘static ozo::istream& ozo::recv_impl<Out, <template-parameter-1-2> >::apply(ozo::istream&, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<>; Out = short int; <template-parameter-1-2> = void; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:160:45: required from ‘ozo::istream& ozo::detail::recv(ozo::istream&, Oid, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<>; Oid = unsigned int; Out = short int; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:201:24: required from ‘ozo::istream& ozo::recv(ozo::istream&, ozo::oid_t, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<>; Out = short int; ozo::oid_t = unsigned int; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:251:9: required from ‘void ozo::recv(const ozo::value<Result>&, const OidMap&, Out&) [with T = ozo::tests::pg_result_mock; OidMap = ozo::oid_map_t<>; Out = short int]’
/home/jonesmz/ozo/tests/binary_deserialization.cpp:104:34: required from here
/home/jonesmz/ozo/include/ozo/io/istream.h:72:9: error: no matching function for call to ‘ozo::istream::read(ozo::detail::typed_buffer<short int>&)’
72 | read(buf);
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:38:14: note: candidate: ‘ozo::istream& ozo::istream::read(ozo::istream::char_type*, std::streamsize)’
38 | istream& read(char_type* buf, std::streamsize len) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:38:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: note: candidate: ‘template<class T> ozo::Require<RawDataWritable<T>, ozo::istream&> ozo::istream::read(T&)’
57 | Require<RawDataWritable<T>, istream&> read(T& out) {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:64:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::istream&> ozo::istream::read(T&)’
64 | Require<Integral<T> && sizeof(T) == 1, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:64:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:70:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&)’
70 | Require<Integral<T> && sizeof(T) != 1, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:70:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:78:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::istream&> ozo::istream::read(T&)’
78 | Require<FloatingPoint<T>, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:78:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:85:14: note: candidate: ‘ozo::istream& ozo::istream::read(bool&)’
85 | istream& read(bool& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:85:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<short int>’ to ‘bool&’
85 | istream& read(bool& out) noexcept {
| ~~~~~~^~~
/home/jonesmz/ozo/include/ozo/io/istream.h:93:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::istream&> ozo::istream::read(T&)’
93 | Require<HanaStruct<T>, istream&> read(T& out) {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:93:38: note: template argument deduction/substitution failed:
In file included from /home/jonesmz/ozo/include/ozo/impl/async_request.h:9,
from /home/jonesmz/ozo/tests/impl/async_send_query_params.cpp:4:
/home/jonesmz/ozo/include/ozo/query_builder.h:187:16: error: ISO C++ did not adopt string literal operator templates taking an argument pack of characters [-Werror=pedantic]
187 | constexpr auto operator "" _SQL() {
| ^~~~~~~~
cc1plus: all warnings being treated as errors
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:154: tests/CMakeFiles/ozo_tests.dir/connection_info.cpp.o] Error 1
/home/jonesmz/ozo/include/ozo/io/istream.h: In instantiation of ‘ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&) [with T = unsigned int; ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> = ozo::istream&]’:
/home/jonesmz/ozo/include/ozo/io/istream.h:95:13: required from ‘ozo::istream::read(T&) [with T = ozo::detail::pg_array; ozo::Require<HanaStruct<T>, ozo::istream&> = ozo::istream&]::<lambda(auto:3)> [with auto:3 = boost::hana::string<'e', 'l', 'e', 'm', 't', 'y', 'p', 'e'>]’
/usr/include/boost/hana/for_each.hpp:46:45: required from ‘constexpr void boost::hana::detail::on_each<F>::operator()(Xs&& ...) const [with Xs = {boost::hana::string<'d', 'i', 'm', 'e', 'n', 's', 'i', 'o', 'n', 's', '_', 'c', 'o', 'u', 'n', 't'>, boost::hana::string<'d', 'a', 't', 'a', 'o', 'f', 'f', 's', 'e', 't'>, boost::hana::string<'e', 'l', 'e', 'm', 't', 'y', 'p', 'e'>}; F = ozo::istream::read(T&) [with T = ozo::detail::pg_array; ozo::Require<HanaStruct<T>, ozo::istream&> = ozo::istream&]::<lambda(auto:3)>*]’
/usr/include/boost/hana/basic_tuple.hpp:135:39: required from ‘static constexpr decltype(auto) boost::hana::unpack_impl<boost::hana::basic_tuple_tag>::apply(boost::hana::detail::basic_tuple_impl<std::integer_sequence<long unsigned int, _Idx ...>, Xn ...>&&, F&&) [with long unsigned int ...i = {0, 1, 2}; Xn = {boost::hana::string<'d', 'i', 'm', 'e', 'n', 's', 'i', 'o', 'n', 's', '_', 'c', 'o', 'u', 'n', 't'>, boost::hana::string<'d', 'a', 't', 'a', 'o', 'f', 'f', 's', 'e', 't'>, boost::hana::string<'e', 'l', 'e', 'm', 't', 'y', 'p', 'e'>}; F = boost::hana::detail::on_each<ozo::istream::read(T&) [with T = ozo::detail::pg_array; ozo::Require<HanaStruct<T>, ozo::istream&> = ozo::istream&]::<lambda(auto:3)>*>]’
/usr/include/boost/hana/unpack.hpp:47:29: required from ‘constexpr decltype(auto) boost::hana::unpack_t::operator()(Xs&&, F&&) const [with Xs = boost::hana::basic_tuple<boost::hana::string<'d', 'i', 'm', 'e', 'n', 's', 'i', 'o', 'n', 's', '_', 'c', 'o', 'u', 'n', 't'>, boost::hana::string<'d', 'a', 't', 'a', 'o', 'f', 'f', 's', 'e', 't'>, boost::hana::string<'e', 'l', 'e', 'm', 't', 'y', 'p', 'e'> >; F = boost::hana::detail::on_each<ozo::istream::read(T&) [with T = ozo::detail::pg_array; ozo::Require<HanaStruct<T>, ozo::istream&> = ozo::istream&]::<lambda(auto:3)>*>]’
/usr/include/boost/hana/tuple.hpp:233:32: required from ‘static constexpr decltype(auto) boost::hana::unpack_impl<boost::hana::tuple_tag>::apply(Xs&&, F&&) [with Xs = boost::hana::tuple<boost::hana::string<'d', 'i', 'm', 'e', 'n', 's', 'i', 'o', 'n', 's', '_', 'c', 'o', 'u', 'n', 't'>, boost::hana::string<'d', 'a', 't', 'a', 'o', 'f', 'f', 's', 'e', 't'>, boost::hana::string<'e', 'l', 'e', 'm', 't', 'y', 'p', 'e'> >; F = boost::hana::detail::on_each<ozo::istream::read(T&) [with T = ozo::detail::pg_array; ozo::Require<HanaStruct<T>, ozo::istream&> = ozo::istream&]::<lambda(auto:3)>*>]’
/usr/include/boost/hana/unpack.hpp:47:29: [ skipping 4 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/jonesmz/ozo/include/ozo/io/istream.h:107:9: required from ‘ozo::istream& ozo::read(ozo::istream&, Ts&& ...) [with Ts = {ozo::detail::pg_array&}]’
/home/jonesmz/ozo/include/ozo/io/array.h:138:30: required from ‘static ozo::istream& ozo::detail::recv_array_impl<T>::apply(ozo::istream&, ozo::size_type, const OidMap&, ozo::detail::recv_array_impl<T>::out_type&) [with OidMap = ozo::oid_map_t<>; T = std::vector<std::__cxx11::basic_string<char> >; ozo::size_type = int; ozo::detail::recv_array_impl<T>::out_type = std::vector<std::__cxx11::basic_string<char> >]’
/home/jonesmz/ozo/include/ozo/io/recv.h:160:45: required from ‘ozo::istream& ozo::detail::recv(ozo::istream&, Oid, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<>; Oid = unsigned int; Out = std::vector<std::__cxx11::basic_string<char> >; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:201:24: required from ‘ozo::istream& ozo::recv(ozo::istream&, ozo::oid_t, ozo::size_type, const OidMap&, Out&) [with OidMap = ozo::oid_map_t<>; Out = std::vector<std::__cxx11::basic_string<char> >; ozo::oid_t = unsigned int; ozo::size_type = int]’
/home/jonesmz/ozo/include/ozo/io/recv.h:251:9: required from ‘void ozo::recv(const ozo::value<Result>&, const OidMap&, Out&) [with T = ozo::tests::pg_result_mock; OidMap = ozo::oid_map_t<>; Out = std::vector<std::__cxx11::basic_string<char> >]’
/home/jonesmz/ozo/tests/binary_deserialization.cpp:212:34: required from here
/home/jonesmz/ozo/include/ozo/io/istream.h:72:9: error: no matching function for call to ‘ozo::istream::read(ozo::detail::typed_buffer<unsigned int>&)’
72 | read(buf);
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:38:14: note: candidate: ‘ozo::istream& ozo::istream::read(ozo::istream::char_type*, std::streamsize)’
38 | istream& read(char_type* buf, std::streamsize len) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:38:14: note: candidate expects 2 arguments, 1 provided
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: note: candidate: ‘template<class T> ozo::Require<RawDataWritable<T>, ozo::istream&> ozo::istream::read(T&)’
57 | Require<RawDataWritable<T>, istream&> read(T& out) {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:57:43: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:64:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) == 1)), ozo::istream&> ozo::istream::read(T&)’
64 | Require<Integral<T> && sizeof(T) == 1, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:64:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:70:54: note: candidate: ‘template<class T> ozo::Require<(Integral<T> && (sizeof (T) != 1)), ozo::istream&> ozo::istream::read(T&)’
70 | Require<Integral<T> && sizeof(T) != 1, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:70:54: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:78:41: note: candidate: ‘template<class T> ozo::Require<FloatingPoint<T>, ozo::istream&> ozo::istream::read(T&)’
78 | Require<FloatingPoint<T>, istream&> read(T& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:78:41: note: template argument deduction/substitution failed:
/home/jonesmz/ozo/include/ozo/io/istream.h:85:14: note: candidate: ‘ozo::istream& ozo::istream::read(bool&)’
85 | istream& read(bool& out) noexcept {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:85:25: note: no known conversion for argument 1 from ‘ozo::detail::typed_buffer<unsigned int>’ to ‘bool&’
85 | istream& read(bool& out) noexcept {
| ~~~~~~^~~
/home/jonesmz/ozo/include/ozo/io/istream.h:93:38: note: candidate: ‘template<class T> ozo::Require<HanaStruct<T>, ozo::istream&> ozo::istream::read(T&)’
93 | Require<HanaStruct<T>, istream&> read(T& out) {
| ^~~~
/home/jonesmz/ozo/include/ozo/io/istream.h:93:38: note: template argument deduction/substitution failed:
In file included from /home/jonesmz/ozo/include/ozo/impl/async_request.h:9,
from /home/jonesmz/ozo/include/ozo/impl/request_oid_map.h:3,
from /home/jonesmz/ozo/include/ozo/impl/async_connect.h:7,
from /home/jonesmz/ozo/include/ozo/connection_info.h:5,
from /home/jonesmz/ozo/tests/impl/request_oid_map.cpp:3:
/home/jonesmz/ozo/include/ozo/query_builder.h:187:16: error: ISO C++ did not adopt string literal operator templates taking an argument pack of characters [-Werror=pedantic]
187 | constexpr auto operator "" _SQL() {
| ^~~~~~~~
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:76: tests/CMakeFiles/ozo_tests.dir/binary_deserialization.cpp.o] Error 1
cc1plus: all warnings being treated as errors
In file included from /home/jonesmz/ozo/include/ozo/impl/async_request.h:9,
from /home/jonesmz/ozo/include/ozo/impl/request_oid_map.h:3,
from /home/jonesmz/ozo/include/ozo/impl/async_connect.h:7,
from /home/jonesmz/ozo/tests/impl/request_oid_map_handler.cpp:4:
/home/jonesmz/ozo/include/ozo/query_builder.h:187:16: error: ISO C++ did not adopt string literal operator templates taking an argument pack of characters [-Werror=pedantic]
187 | constexpr auto operator "" _SQL() {
| ^~~~~~~~
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:323: tests/CMakeFiles/ozo_tests.dir/detail/begin_statement_builder.cpp.o] Error 1
In file included from /home/jonesmz/ozo/include/ozo/impl/async_request.h:9,
from /home/jonesmz/ozo/include/ozo/impl/async_execute.h:4,
from /home/jonesmz/ozo/include/ozo/impl/async_start_transaction.h:4,
from /home/jonesmz/ozo/tests/impl/async_start_transaction.cpp:4:
/home/jonesmz/ozo/include/ozo/query_builder.h:187:16: error: ISO C++ did not adopt string literal operator templates taking an argument pack of characters [-Werror=pedantic]
187 | constexpr auto operator "" _SQL() {
| ^~~~~~~~
In file included from /home/jonesmz/ozo/include/ozo/impl/async_request.h:9,
from /home/jonesmz/ozo/include/ozo/impl/async_execute.h:4,
from /home/jonesmz/ozo/include/ozo/impl/async_end_transaction.h:4,
from /home/jonesmz/ozo/tests/impl/async_end_transaction.cpp:4:
/home/jonesmz/ozo/include/ozo/query_builder.h:187:16: error: ISO C++ did not adopt string literal operator templates taking an argument pack of characters [-Werror=pedantic]
187 | constexpr auto operator "" _SQL() {
| ^~~~~~~~
cc1plus: all warnings being treated as errors
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:375: tests/CMakeFiles/ozo_tests.dir/impl/request_oid_map.cpp.o] Error 1
cc1plus: all warnings being treated as errors
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:388: tests/CMakeFiles/ozo_tests.dir/impl/request_oid_map_handler.cpp.o] Error 1
cc1plus: all warnings being treated as errors
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:284: tests/CMakeFiles/ozo_tests.dir/impl/async_send_query_params.cpp.o] Error 1
cc1plus: all warnings being treated as errors
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:414: tests/CMakeFiles/ozo_tests.dir/impl/async_end_transaction.cpp.o] Error 1
cc1plus: all warnings being treated as errors
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:401: tests/CMakeFiles/ozo_tests.dir/impl/async_start_transaction.cpp.o] Error 1
cc1plus: all warnings being treated as errors
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:63: tests/CMakeFiles/ozo_tests.dir/impl/async_connect.cpp.o] Error 1
cc1plus: all warnings being treated as errors
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:167: tests/CMakeFiles/ozo_tests.dir/connection_pool.cpp.o] Error 1
cc1plus: all warnings being treated as errors
make[2]: *** [tests/CMakeFiles/ozo_tests.dir/build.make:297: tests/CMakeFiles/ozo_tests.dir/impl/async_get_result.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:153: tests/CMakeFiles/ozo_tests.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
jonesmz@mzj-mpp-workspace ~/ozo/build $ ctest -V
I do not get any warnings, compiler errors, or test failures at all with clang 9.
Also effects GCC 9.3.0, so this doesn't appear to be a GCC bug, or if it is, it's a bug that survived a bugfix release.
Could you try #254 ?
Yes.
I will try in approximately 1-2 hours.
Had some time earlier than anticipated.
So it appears to fix the problem!
This is a new issue.
Am I missing a header file or something?
Notably, I get this error on gcc 9.2, but I don't get this error with clang 9.