Skip to content

Commit c264cab

Browse files
committed
demo issue occuring in pybind11-stubgen
1 parent 5c49858 commit c264cab

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

tests/test_class.cpp

+7
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,10 @@ class Args : public py::args {};
6060

6161
} // namespace test_class
6262

63+
namespace {
64+
class Foo {};
65+
} // namespace
66+
6367
static_assert(py::detail::is_same_or_base_of<py::args, py::args>::value, "");
6468
static_assert(
6569
py::detail::is_same_or_base_of<py::args,
@@ -577,6 +581,9 @@ TEST_SUBMODULE(class_, m) {
577581
});
578582

579583
test_class::pr4220_tripped_over_this::bind_empty0(m);
584+
585+
// test register different classes with same name (in anonymous namespace)
586+
py::class_<Foo>(m, "Foo");
580587
}
581588

582589
template <int N>

tests/test_pytypes.cpp

+7
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,10 @@ struct type_caster<RealNumber> {
177177
} // namespace detail
178178
} // namespace pybind11
179179

180+
namespace {
181+
class Foo {};
182+
} // namespace
183+
180184
TEST_SUBMODULE(pytypes, m) {
181185
m.def("obj_class_name", [](py::handle obj) { return py::detail::obj_class_name(obj.ptr()); });
182186

@@ -1206,4 +1210,7 @@ TEST_SUBMODULE(pytypes, m) {
12061210
m.def("check_type_is", [](const py::object &x) -> py::typing::TypeIs<RealNumber> {
12071211
return py::isinstance<RealNumber>(x);
12081212
});
1213+
1214+
// test register different classes with same name (in anonymous namespace)
1215+
py::class_<Foo>(m, "Foo");
12091216
}

0 commit comments

Comments
 (0)