Skip to content

Commit 711b158

Browse files
committed
Fixes for ci.
Clang 3.6 requires the extra constructors in the custom_deleter.
1 parent 23d5eac commit 711b158

File tree

3 files changed

+7
-3
lines changed

3 files changed

+7
-3
lines changed

include/pybind11/detail/smart_holder_type_casters.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -637,8 +637,8 @@ struct smart_holder_type_caster_load {
637637
extracted_deleter = std::move(custom_deleter_ptr->deleter);
638638
} else {
639639
// Not sure if anything needs to be done here. In general, if the del function is
640-
// used a default destructor is used which should be accomodated by the type of the
641-
// deleter used in the returned unique ptr.
640+
// used a default destructor is used which should be accommodated by the type of
641+
// the deleter used in the returned unique ptr.
642642
}
643643
}
644644

tests/test_class_sh_basic.cpp

+3-1
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@ std::string pass_udcp(std::unique_ptr<atyp const, sddc> obj) { return "pass_udcp
6868
struct custom_deleter
6969
{
7070
std::string delete_txt;
71+
custom_deleter() {}
72+
explicit custom_deleter(const std::string &delete_txt_) : delete_txt(delete_txt_) {}
7173
void operator()(atyp* p) const
7274
{
7375
std::default_delete<atyp>()(p);
@@ -80,7 +82,7 @@ struct custom_deleter
8082

8183
std::unique_ptr<atyp, custom_deleter> rtrn_udmp_del() { return std::unique_ptr<atyp, custom_deleter>(new atyp{"rtrn_udmp_del"}, custom_deleter{"udmp_deleter"}); }
8284
std::unique_ptr<atyp const, custom_deleter> rtrn_udcp_del() { return std::unique_ptr<atyp const, custom_deleter>(new atyp{"rtrn_udcp_del"}, custom_deleter{"udcp_deleter"}); }
83-
85+
8486
std::string pass_udmp_del(std::unique_ptr<atyp, custom_deleter> obj) { return "pass_udmp_del:" + obj->mtxt + "," + obj.get_deleter().delete_txt; }
8587
std::string pass_udcp_del(std::unique_ptr<atyp const, custom_deleter> obj) { return "pass_udcp_del:" + obj->mtxt + "," + obj.get_deleter().delete_txt; }
8688

tests/test_class_sh_basic.py

+2
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ def test_load_with_mtxt(pass_f, mtxt, expected):
6464
def test_load_with_rtrn_f(pass_f, rtrn_f, expected):
6565
assert pass_f(rtrn_f()) == expected
6666

67+
6768
@pytest.mark.parametrize(
6869
("pass_f", "rtrn_f", "expected"),
6970
[
@@ -74,6 +75,7 @@ def test_load_with_rtrn_f(pass_f, rtrn_f, expected):
7475
def test_deleter_roundtrip(pass_f, rtrn_f, expected):
7576
assert pass_f(rtrn_f()) == expected
7677

78+
7779
@pytest.mark.parametrize(
7880
("pass_f", "rtrn_f", "expected"),
7981
[

0 commit comments

Comments
 (0)