pybind11/tests
oremanj e7761e3383 Fix potential crash when calling an overloaded function (#1327)
* Fix potential crash when calling an overloaded function

The crash would occur if:
- dispatcher() uses two-pass logic (because the target is overloaded and some arguments support conversions)
- the first pass (with conversions disabled) doesn't find any matching overload
- the second pass does find a matching overload, but its return value can't be converted to Python

The code for formatting the error message assumed `it` still pointed to the selected overload,
but during the second-pass loop `it` was nullptr. Fix by setting `it` correctly if a second-pass
call returns a nullptr `handle`. Add a new test that segfaults without this fix.

* Make overload iteration const-correct so we don't have to iterate again on second-pass error

* Change test_error_after_conversions dependencies to local classes/variables
2018-09-25 23:55:18 +02:00
..
test_cmake_build Add test for custom CMake export group 2017-08-07 23:08:20 +02:00
test_embed Fix compatibility with catch v2 2018-07-19 16:12:39 -03:00
CMakeLists.txt Add basic support for tag-based static polymorphism (#1326) 2018-04-14 02:13:10 +02:00
conftest.py Allow binding factory functions as constructors 2017-08-17 09:33:27 -04:00
constructor_stats.h Support multiple inheritance from python 2017-06-12 09:56:55 -03:00
local_bindings.h Fix nullptr dereference when loading an external-only module_local type 2017-09-10 12:28:03 +02:00
object.h Improve custom holder support (#607) 2017-01-31 17:05:44 +01:00
pybind11_cross_module_tests.cpp Make TypeErrors more informative when an optional header is missing 2017-09-12 08:06:46 +02:00
pybind11_tests.cpp Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
pybind11_tests.h Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
pytest.ini Don't let pytest discover tests from test_cmake_build and test_embed 2017-06-10 16:44:21 +02:00
test_buffers.cpp correct stride in matrix example and test 2017-09-21 18:07:48 -03:00
test_buffers.py correct stride in matrix example and test 2017-09-21 18:07:48 -03:00
test_builtin_casters.cpp Matching Python 2 int behavior on Python 2 (#1186) 2017-11-30 13:33:24 -04:00
test_builtin_casters.py Matching Python 2 int behavior on Python 2 (#1186) 2017-11-30 13:33:24 -04:00
test_call_policies.cpp Add -Wdeprecated to test suite and fix associated warnings (#1191) 2017-11-22 17:37:41 -04:00
test_call_policies.py Fix application of keep_alive policy to constructors (regression) 2017-09-06 10:21:11 +02:00
test_callbacks.cpp Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_callbacks.py Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_chrono.cpp Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_chrono.py Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_class.cpp Fix potential crash when calling an overloaded function (#1327) 2018-09-25 23:55:18 +02:00
test_class.py Fix potential crash when calling an overloaded function (#1327) 2018-09-25 23:55:18 +02:00
test_constants_and_functions.cpp Add -Wdeprecated to test suite and fix associated warnings (#1191) 2017-11-22 17:37:41 -04:00
test_constants_and_functions.py Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_copy_move.cpp Make it possible to generate constexpr signatures in C++11 mode 2017-09-16 12:02:49 +02:00
test_copy_move.py Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_docstring_options.cpp Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_docstring_options.py Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_eigen.cpp Typo 2018-02-27 22:46:56 -04:00
test_eigen.py Eigen test suite: don't create a np.matrix 2018-08-28 23:22:55 +02:00
test_enum.cpp check for already existing enum value added; added test (#1453) 2018-09-11 10:59:56 +02:00
test_enum.py enum_: move most functionality to a non-template implementation 2018-09-11 22:08:26 +02:00
test_eval_call.py Add checks to maintain a consistent Python code style and prevent bugs (#515) 2016-11-20 21:21:54 +01:00
test_eval.cpp Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_eval.py Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_exceptions.cpp misc. typos 2018-01-11 16:39:50 -04:00
test_exceptions.py Fix builtin exception handlers to work across modules 2017-08-04 10:47:34 -04:00
test_factory_constructors.cpp Add -Wdeprecated to test suite and fix associated warnings (#1191) 2017-11-22 17:37:41 -04:00
test_factory_constructors.py Reduce binary size overhead of new-style constructors 2017-08-28 16:08:53 +02:00
test_iostream.cpp Utility for redirecting C++ streams to Python (#1009) 2017-08-25 02:12:43 +02:00
test_iostream.py Fixed flake8 error in test_iostream.py 2018-08-29 12:10:48 +02:00
test_kwargs_and_defaults.cpp Added py::args ref counting tests 2017-12-23 18:53:26 -04:00
test_kwargs_and_defaults.py Add spaces around "=" in signature repr. 2017-12-27 11:04:24 -04:00
test_local_bindings.cpp Fix nullptr dereference when loading an external-only module_local type 2017-09-10 12:28:03 +02:00
test_local_bindings.py Fix nullptr dereference when loading an external-only module_local type 2017-09-10 12:28:03 +02:00
test_methods_and_attributes.cpp Added write only property functions for issue #1142 (#1144) 2017-11-07 12:35:27 -04:00
test_methods_and_attributes.py Added write only property functions for issue #1142 (#1144) 2017-11-07 12:35:27 -04:00
test_modules.cpp Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_modules.py Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_multiple_inheritance.cpp Add -Wdeprecated to test suite and fix associated warnings (#1191) 2017-11-22 17:37:41 -04:00
test_multiple_inheritance.py Reimplement py::init<...> to use common factory code 2017-08-17 09:33:27 -04:00
test_numpy_array.cpp added py::ellipsis() method for slicing of multidimensional NumPy arrays 2018-08-28 23:22:55 +02:00
test_numpy_array.py added py::ellipsis() method for slicing of multidimensional NumPy arrays 2018-08-28 23:22:55 +02:00
test_numpy_dtypes.cpp Make register_dtype() accept any field containers (#1225) 2017-12-27 11:00:27 -04:00
test_numpy_dtypes.py Fix numpy dtypes test on big-endian architectures 2018-02-18 18:36:11 +01:00
test_numpy_vectorize.cpp Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_numpy_vectorize.py Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_opaque_types.cpp Improve macro type handling for types with commas 2018-03-10 14:24:23 -04:00
test_opaque_types.py Fix new flake8 E741 error from using l variable 2017-10-25 08:18:21 -03:00
test_operator_overloading.cpp Access C++ hash functions from Python and vice versa (#1034) 2017-08-30 14:22:00 +02:00
test_operator_overloading.py misc. typos 2018-01-11 16:39:50 -04:00
test_pickling.cpp Relax py::pickle() get/set type check 2017-09-06 15:20:52 +02:00
test_pickling.py enum_: move most functionality to a non-template implementation 2018-09-11 22:08:26 +02:00
test_pytypes.cpp relax operator[] for tuples, lists, and sequences 2018-09-11 22:08:26 +02:00
test_pytypes.py relax operator[] for tuples, lists, and sequences 2018-09-11 22:08:26 +02:00
test_sequences_and_iterators.cpp Update all remaining tests to new test styles 2017-08-05 18:46:22 -04:00
test_sequences_and_iterators.py Fix new flake8 E741 error from using l variable 2017-10-25 08:18:21 -03:00
test_smart_ptr.cpp Use std::addressof to obtain holder address instead of operator& 2018-06-23 21:29:54 -03:00
test_smart_ptr.py Use std::addressof to obtain holder address instead of operator& 2018-06-23 21:29:54 -03:00
test_stl_binders.cpp Fix STL casters for containers with proxies (regression) 2017-09-10 12:25:10 +02:00
test_stl_binders.py fix return from std::map bindings to __delitem__ (#1229) 2018-01-11 19:43:37 -04:00
test_stl.cpp stl.h: propagate return value policies to type-specific casters (#1455) 2018-07-17 16:56:26 +02:00
test_stl.py stl.h: propagate return value policies to type-specific casters (#1455) 2018-07-17 16:56:26 +02:00
test_tagbased_polymorphic.cpp Add basic support for tag-based static polymorphism (#1326) 2018-04-14 02:13:10 +02:00
test_tagbased_polymorphic.py Add basic support for tag-based static polymorphism (#1326) 2018-04-14 02:13:10 +02:00
test_virtual_functions.cpp fix regression reported by @cyfdecyf in #1454 (#1517) 2018-09-11 09:32:45 +02:00
test_virtual_functions.py fix regression reported by @cyfdecyf in #1454 (#1517) 2018-09-11 09:32:45 +02:00