diff --git a/src/entt/meta/utility.hpp b/src/entt/meta/utility.hpp index 4f51cd84d..6f4de1361 100644 --- a/src/entt/meta/utility.hpp +++ b/src/entt/meta/utility.hpp @@ -341,12 +341,12 @@ template -[[nodiscard]] meta_any meta_construct(meta_any *const args, std::index_sequence) { +[[nodiscard]] meta_any meta_construct(const meta_ctx &ctx, meta_any *const args, std::index_sequence) { if(((args + Index)->allow_cast() && ...)) { - return meta_any{std::in_place_type, (args + Index)->cast()...}; + return meta_any{ctx, std::in_place_type, (args + Index)->cast()...}; } - return meta_any{}; + return meta_any{meta_ctx_arg, ctx}; } } // namespace internal @@ -425,8 +425,8 @@ template * @return A meta any containing the new instance, if any. */ template -[[nodiscard]] meta_any meta_construct(const meta_ctx &ctx /*_TODO*/, meta_any *const args) { - return internal::meta_construct(args, std::index_sequence_for{}); +[[nodiscard]] meta_any meta_construct(const meta_ctx &ctx, meta_any *const args) { + return internal::meta_construct(ctx, args, std::index_sequence_for{}); } /**