From ed74a4c213d65741d0746034f80310acfa3e58bd Mon Sep 17 00:00:00 2001 From: Michele Caini Date: Thu, 1 Sep 2022 16:09:30 +0200 Subject: [PATCH] meta: explicit initialization of all values of a meta object --- src/entt/meta/node.hpp | 52 +++++++++++++++++++++--------------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/src/entt/meta/node.hpp b/src/entt/meta/node.hpp index bd3b77f40..1b00a47e1 100644 --- a/src/entt/meta/node.hpp +++ b/src/entt/meta/node.hpp @@ -53,20 +53,20 @@ struct meta_prop_node { }; struct meta_base_node { - meta_type_node *(*type)() noexcept; - meta_any (*cast)(meta_any) noexcept; + meta_type_node *(*type)() noexcept {nullptr}; + meta_any (*cast)(meta_any) noexcept {nullptr}; }; struct meta_conv_node { - meta_any (*conv)(const meta_any &); + meta_any (*conv)(const meta_any &){nullptr}; }; struct meta_ctor_node { using size_type = std::size_t; - size_type arity; - meta_type (*arg)(const size_type) noexcept; - meta_any (*invoke)(meta_any *const); + size_type arity{0u}; + meta_type (*arg)(const size_type) noexcept {nullptr}; + meta_any (*invoke)(meta_any *const){nullptr}; }; struct meta_dtor_node { @@ -76,23 +76,23 @@ struct meta_dtor_node { struct meta_data_node { using size_type = std::size_t; - meta_traits traits; - size_type arity; - meta_type_node *(*type)() noexcept; - meta_type (*arg)(const size_type) noexcept; - bool (*set)(meta_handle, meta_any); - meta_any (*get)(meta_handle); + meta_traits traits{meta_traits::is_none}; + size_type arity{0u}; + meta_type_node *(*type)() noexcept {nullptr}; + meta_type (*arg)(const size_type) noexcept {nullptr}; + bool (*set)(meta_handle, meta_any){nullptr}; + meta_any (*get)(meta_handle){nullptr}; dense_map prop{}; }; struct meta_func_node { using size_type = std::size_t; - meta_traits traits; - size_type arity; - meta_type_node *(*ret)() noexcept; - meta_type (*arg)(const size_type) noexcept; - meta_any (*invoke)(meta_handle, meta_any *const); + meta_traits traits{meta_traits::is_none}; + size_type arity{0u}; + meta_type_node *(*ret)() noexcept {nullptr}; + meta_type (*arg)(const size_type) noexcept {nullptr}; + meta_any (*invoke)(meta_handle, meta_any *const){nullptr}; dense_map prop{}; std::unique_ptr next{}; }; @@ -108,15 +108,15 @@ struct meta_template_node { struct meta_type_node { using size_type = std::size_t; - const type_info *info; - id_type id; - meta_traits traits; - size_type size_of; - meta_type_node *(*remove_pointer)() noexcept; - meta_any (*default_constructor)(); - double (*conversion_helper)(void *, const void *); - meta_any (*from_void)(void *, const void *); - meta_template_node templ; + const type_info *info{nullptr}; + id_type id{}; + meta_traits traits{meta_traits::is_none}; + size_type size_of{0u}; + meta_type_node *(*remove_pointer)() noexcept {nullptr}; + meta_any (*default_constructor)(){nullptr}; + double (*conversion_helper)(void *, const void *){nullptr}; + meta_any (*from_void)(void *, const void *){nullptr}; + meta_template_node templ{}; dense_map prop{}; dense_map ctor{}; dense_map base{};