From 897280444bd6588258cdbdc6955fdfa523d5d6b5 Mon Sep 17 00:00:00 2001 From: pupil1337 <2500698263@qq.com> Date: Sun, 7 Apr 2024 21:07:01 +0800 Subject: [PATCH] Add static_assert() for register_class (cherry picked from commit 1fa7a9cb1985bdf6c098492563e0e76cf72fd91a) --- include/godot_cpp/core/class_db.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/include/godot_cpp/core/class_db.hpp b/include/godot_cpp/core/class_db.hpp index 23a5ebdb..18d2cc79 100644 --- a/include/godot_cpp/core/class_db.hpp +++ b/include/godot_cpp/core/class_db.hpp @@ -198,6 +198,7 @@ public: template void ClassDB::_register_class(bool p_virtual, bool p_exposed) { static_assert(TypesAreSame::value, "Class not declared properly, please use GDCLASS."); + static_assert(!std::is_abstract_v || is_abstract, "Class is abstract, please use GDREGISTER_ABSTRACT_CLASS."); instance_binding_callbacks[T::get_class_static()] = &T::_gde_binding_callbacks; // Register this class within our plugin