diff --git a/include/nanobind/nb_cast.h b/include/nanobind/nb_cast.h index ebbeba7e..6133c0af 100644 --- a/include/nanobind/nb_cast.h +++ b/include/nanobind/nb_cast.h @@ -423,17 +423,7 @@ T cast(const detail::api &value, bool convert = true) { : (uint8_t) 0, nullptr)) detail::raise_cast_error(); - // GCC misses that from_python will return or ensure orderly initialization - #if defined(__GNUC__) && !defined(__clang__) - #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wmaybe-uninitialized" - #endif - return caster.operator detail::cast_t(); - - #if defined(__GNUC__) && !defined(__clang__) - #pragma GCC diagnostic pop - #endif } } diff --git a/include/nanobind/nb_lib.h b/include/nanobind/nb_lib.h index 3a438ec4..9b1563f2 100644 --- a/include/nanobind/nb_lib.h +++ b/include/nanobind/nb_lib.h @@ -103,7 +103,7 @@ NB_CORE void fail(const char *fmt, ...) noexcept; NB_CORE void raise_next_overload_if_null(void *p); /// Raise nanobind::cast_error -NB_CORE void raise_cast_error(); +[[noreturn]] NB_CORE void raise_cast_error(); // ========================================================================