@@ -444,6 +444,28 @@ TEST_SUBMODULE(class_, m) {
444
444
.def_static (" get_name" , []() { return " BaseWithNested::Nested" ; });
445
445
py::class_<DerivedWithNested::Nested>(derivedWithNested_class, " Nested" )
446
446
.def_static (" get_name" , []() { return " DerivedWithNested::Nested" ; });
447
+
448
+ // test_register_duplicate_class
449
+ struct Duplicate {};
450
+ struct OtherDuplicate {};
451
+ struct DuplicateNested {};
452
+ struct OtherDuplicateNested {};
453
+ m.def (" register_duplicate_class_name" , [](py::module_ m) {
454
+ py::class_<Duplicate>(m, " Duplicate" );
455
+ py::class_<OtherDuplicate>(m, " Duplicate" );
456
+ });
457
+ m.def (" register_duplicate_class_type" , [](py::module_ m) {
458
+ py::class_<OtherDuplicate>(m, " OtherDuplicate" );
459
+ py::class_<OtherDuplicate>(m, " YetAnotherDuplicate" );
460
+ });
461
+ m.def (" register_duplicate_nested_class_name" , [](py::object gt) {
462
+ py::class_<DuplicateNested>(gt, " DuplicateNested" );
463
+ py::class_<OtherDuplicateNested>(gt, " DuplicateNested" );
464
+ });
465
+ m.def (" register_duplicate_nested_class_type" , [](py::object gt) {
466
+ py::class_<OtherDuplicateNested>(gt, " OtherDuplicateNested" );
467
+ py::class_<OtherDuplicateNested>(gt, " YetAnotherDuplicateNested" );
468
+ });
447
469
}
448
470
449
471
template <int N> class BreaksBase { public:
0 commit comments