Skip to content

Commit be0c7e6

Browse files
committed
implicitly_convertible: don't accept enum targets (fixes #871)
1 parent 92d9cb3 commit be0c7e6

File tree

1 file changed

+1
-0
lines changed

1 file changed

+1
-0
lines changed

include/nanobind/nb_class.h

+1
Original file line numberDiff line numberDiff line change
@@ -801,6 +801,7 @@ template <typename T> class enum_ : public object {
801801

802802
template <typename Source, typename Target> void implicitly_convertible() {
803803
using Caster = detail::make_caster<Source>;
804+
static_assert(!std::is_enum_v<Target>, "implicitly_convertible(): 'Target' cannot be an enumeration.");
804805

805806
if constexpr (detail::is_base_caster_v<Caster>) {
806807
detail::implicitly_convertible(&typeid(Source), &typeid(Target));

0 commit comments

Comments
 (0)