mirror of
https://github.com/pybind/pybind11.git
synced 2024-11-25 06:35:12 +00:00
a406a62e5b
* Add tests only. Fails to build with this error message: ``` g++ -o pybind11/tests/test_copy_move.os -c -std=c++17 -fPIC -fvisibility=hidden -O0 -g -Wall -Wextra -Wconversion -Wcast-qual -Wdeprecated -Wundef -Wnon-virtual-dtor -Wunused-result -Werror -isystem /usr/include/python3.11 -isystem /usr/include/eigen3 -DPYBIND11_STRICT_ASSERTS_CLASS_HOLDER_VS_TYPE_CASTER_MIX -DPYBIND11_ENABLE_TYPE_CASTER_ODR_GUARD_IF_AVAILABLE -DPYBIND11_TEST_BOOST -DPYBIND11_INTERNALS_VERSION=10000000 -Ipybind11/include -I/usr/local/google/home/rwgk/forked/pybind11/include -I/usr/local/google/home/rwgk/clone/pybind11/include /usr/local/google/home/rwgk/forked/pybind11/tests/test_copy_move.cpp In file included from /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../cast.h:15, from /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../attr.h:14, from /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/class.h:12, from /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/pybind11.h:13, from /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/stl.h:12, from /usr/local/google/home/rwgk/forked/pybind11/tests/test_copy_move.cpp:11: /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h: In instantiation of ‘static pybind11::handle pybind11::detail::type_caster_base<type>::cast(const itype&, pybind11::return_value_policy, pybind11::handle) [with type = UnusualOpRef; itype = UnusualOpRef]’: /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../cast.h:1230:37: required from ‘pybind11::object pybind11::cast(T&&, return_value_policy, handle) [with T = const UnusualOpRef&; typename std::enable_if<(! std::is_base_of<detail::pyobject_tag, typename std::remove_reference<_Tp>::type>::value), int>::type <anonymous> = 0]’ /usr/local/google/home/rwgk/forked/pybind11/tests/test_copy_move.cpp:162:80: required from here /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1110:20: error: no matching function for call to ‘pybind11::detail::type_caster_base<UnusualOpRef>::cast(const UnusualOpRef::NonTrivialType, pybind11::return_value_policy&, pybind11::handle&)’ 1110 | return cast(&src, policy, parent); | ~~~~^~~~~~~~~~~~~~~~~~~~~~ /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1105:19: note: candidate: ‘static pybind11::handle pybind11::detail::type_caster_base<type>::cast(const itype&, pybind11::return_value_policy, pybind11::handle) [with type = UnusualOpRef; itype = UnusualOpRef]’ 1105 | static handle cast(const itype &src, return_value_policy policy, handle parent) { | ^~~~ /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1105:37: note: no known conversion for argument 1 from ‘const UnusualOpRef::NonTrivialType’ {aka ‘const std::shared_ptr<int>’} to ‘const pybind11::detail::type_caster_base<UnusualOpRef>::itype&’ {aka ‘const UnusualOpRef&’} 1105 | static handle cast(const itype &src, return_value_policy policy, handle parent) { | ~~~~~~~~~~~~~^~~ /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1113:19: note: candidate: ‘static pybind11::handle pybind11::detail::type_caster_base<type>::cast(itype&&, pybind11::return_value_policy, pybind11::handle) [with type = UnusualOpRef; itype = UnusualOpRef]’ 1113 | static handle cast(itype &&src, return_value_policy, handle parent) { | ^~~~ /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1113:32: note: no known conversion for argument 1 from ‘const UnusualOpRef::NonTrivialType’ {aka ‘const std::shared_ptr<int>’} to ‘pybind11::detail::type_caster_base<UnusualOpRef>::itype&&’ {aka ‘UnusualOpRef&&’} 1113 | static handle cast(itype &&src, return_value_policy, handle parent) { | ~~~~~~~~^~~ /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1142:19: note: candidate: ‘static pybind11::handle pybind11::detail::type_caster_base<type>::cast(const itype*, pybind11::return_value_policy, pybind11::handle) [with type = UnusualOpRef; itype = UnusualOpRef]’ 1142 | static handle cast(const itype *src, return_value_policy policy, handle parent) { | ^~~~ /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1142:37: note: no known conversion for argument 1 from ‘const UnusualOpRef::NonTrivialType’ {aka ‘const std::shared_ptr<int>’} to ‘const pybind11::detail::type_caster_base<UnusualOpRef>::itype*’ {aka ‘const UnusualOpRef*’} 1142 | static handle cast(const itype *src, return_value_policy policy, handle parent) { | ~~~~~~~~~~~~~^~~ /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h: In instantiation of ‘static pybind11::handle pybind11::detail::type_caster_base<type>::cast(itype&&, pybind11::return_value_policy, pybind11::handle) [with type = UnusualOpRef; itype = UnusualOpRef]’: /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../cast.h:1230:37: required from ‘pybind11::object pybind11::cast(T&&, return_value_policy, handle) [with T = UnusualOpRef; typename std::enable_if<(! std::is_base_of<detail::pyobject_tag, typename std::remove_reference<_Tp>::type>::value), int>::type <anonymous> = 0]’ /usr/local/google/home/rwgk/forked/pybind11/tests/test_copy_move.cpp:163:74: required from here /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1114:20: error: no matching function for call to ‘pybind11::detail::type_caster_base<UnusualOpRef>::cast(UnusualOpRef::NonTrivialType, pybind11::return_value_policy, pybind11::handle&)’ 1114 | return cast(&src, return_value_policy::move, parent); | ~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1105:19: note: candidate: ‘static pybind11::handle pybind11::detail::type_caster_base<type>::cast(const itype&, pybind11::return_value_policy, pybind11::handle) [with type = UnusualOpRef; itype = UnusualOpRef]’ 1105 | static handle cast(const itype &src, return_value_policy policy, handle parent) { | ^~~~ /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1105:37: note: no known conversion for argument 1 from ‘UnusualOpRef::NonTrivialType’ {aka ‘std::shared_ptr<int>’} to ‘const pybind11::detail::type_caster_base<UnusualOpRef>::itype&’ {aka ‘const UnusualOpRef&’} 1105 | static handle cast(const itype &src, return_value_policy policy, handle parent) { | ~~~~~~~~~~~~~^~~ /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1113:19: note: candidate: ‘static pybind11::handle pybind11::detail::type_caster_base<type>::cast(itype&&, pybind11::return_value_policy, pybind11::handle) [with type = UnusualOpRef; itype = UnusualOpRef]’ 1113 | static handle cast(itype &&src, return_value_policy, handle parent) { | ^~~~ /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1113:32: note: no known conversion for argument 1 from ‘UnusualOpRef::NonTrivialType’ {aka ‘std::shared_ptr<int>’} to ‘pybind11::detail::type_caster_base<UnusualOpRef>::itype&&’ {aka ‘UnusualOpRef&&’} 1113 | static handle cast(itype &&src, return_value_policy, handle parent) { | ~~~~~~~~^~~ /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1142:19: note: candidate: ‘static pybind11::handle pybind11::detail::type_caster_base<type>::cast(const itype*, pybind11::return_value_policy, pybind11::handle) [with type = UnusualOpRef; itype = UnusualOpRef]’ 1142 | static handle cast(const itype *src, return_value_policy policy, handle parent) { | ^~~~ /usr/local/google/home/rwgk/forked/pybind11/include/pybind11/detail/../detail/type_caster_base.h:1142:37: note: no known conversion for argument 1 from ‘UnusualOpRef::NonTrivialType’ {aka ‘std::shared_ptr<int>’} to ‘const pybind11::detail::type_caster_base<UnusualOpRef>::itype*’ {aka ‘const UnusualOpRef*’} 1142 | static handle cast(const itype *src, return_value_policy policy, handle parent) { | ~~~~~~~~~~~~~^~~ ``` * Replace `&src` with `std::addressof(src)` to fix the error building the added tests. * Fix accident (not sure how the `const` slipped in here when transferring the diff from pybind11k). |
||
---|---|---|
.. | ||
extra_python_package | ||
extra_setuptools | ||
test_cmake_build | ||
test_embed | ||
CMakeLists.txt | ||
conftest.py | ||
constructor_stats.h | ||
cross_module_gil_utils.cpp | ||
cross_module_interleaved_error_already_set.cpp | ||
eigen_tensor_avoid_stl_array.cpp | ||
env.py | ||
local_bindings.h | ||
object.h | ||
pybind11_cross_module_tests.cpp | ||
pybind11_tests.cpp | ||
pybind11_tests.h | ||
pytest.ini | ||
requirements.txt | ||
test_async.cpp | ||
test_async.py | ||
test_buffers.cpp | ||
test_buffers.py | ||
test_builtin_casters.cpp | ||
test_builtin_casters.py | ||
test_call_policies.cpp | ||
test_call_policies.py | ||
test_callbacks.cpp | ||
test_callbacks.py | ||
test_chrono.cpp | ||
test_chrono.py | ||
test_class.cpp | ||
test_class.py | ||
test_const_name.cpp | ||
test_const_name.py | ||
test_constants_and_functions.cpp | ||
test_constants_and_functions.py | ||
test_copy_move.cpp | ||
test_copy_move.py | ||
test_custom_type_casters.cpp | ||
test_custom_type_casters.py | ||
test_custom_type_setup.cpp | ||
test_custom_type_setup.py | ||
test_docstring_options.cpp | ||
test_docstring_options.py | ||
test_eigen_matrix.cpp | ||
test_eigen_matrix.py | ||
test_eigen_tensor.cpp | ||
test_eigen_tensor.inl | ||
test_eigen_tensor.py | ||
test_enum.cpp | ||
test_enum.py | ||
test_eval_call.py | ||
test_eval.cpp | ||
test_eval.py | ||
test_exceptions.cpp | ||
test_exceptions.h | ||
test_exceptions.py | ||
test_factory_constructors.cpp | ||
test_factory_constructors.py | ||
test_gil_scoped.cpp | ||
test_gil_scoped.py | ||
test_iostream.cpp | ||
test_iostream.py | ||
test_kwargs_and_defaults.cpp | ||
test_kwargs_and_defaults.py | ||
test_local_bindings.cpp | ||
test_local_bindings.py | ||
test_methods_and_attributes.cpp | ||
test_methods_and_attributes.py | ||
test_modules.cpp | ||
test_modules.py | ||
test_multiple_inheritance.cpp | ||
test_multiple_inheritance.py | ||
test_numpy_array.cpp | ||
test_numpy_array.py | ||
test_numpy_dtypes.cpp | ||
test_numpy_dtypes.py | ||
test_numpy_vectorize.cpp | ||
test_numpy_vectorize.py | ||
test_opaque_types.cpp | ||
test_opaque_types.py | ||
test_operator_overloading.cpp | ||
test_operator_overloading.py | ||
test_pickling.cpp | ||
test_pickling.py | ||
test_python_multiple_inheritance.cpp | ||
test_python_multiple_inheritance.py | ||
test_pytypes.cpp | ||
test_pytypes.py | ||
test_sequences_and_iterators.cpp | ||
test_sequences_and_iterators.py | ||
test_smart_ptr.cpp | ||
test_smart_ptr.py | ||
test_stl_binders.cpp | ||
test_stl_binders.py | ||
test_stl.cpp | ||
test_stl.py | ||
test_tagbased_polymorphic.cpp | ||
test_tagbased_polymorphic.py | ||
test_thread.cpp | ||
test_thread.py | ||
test_type_caster_pyobject_ptr.cpp | ||
test_type_caster_pyobject_ptr.py | ||
test_union.cpp | ||
test_union.py | ||
test_unnamed_namespace_a.cpp | ||
test_unnamed_namespace_a.py | ||
test_unnamed_namespace_b.cpp | ||
test_unnamed_namespace_b.py | ||
test_vector_unique_ptr_member.cpp | ||
test_vector_unique_ptr_member.py | ||
test_virtual_functions.cpp | ||
test_virtual_functions.py | ||
valgrind-numpy-scipy.supp | ||
valgrind-python.supp |