From 94d6c4d8beb88799de16b907df3ae5e19ca60fef Mon Sep 17 00:00:00 2001 From: Robear Selwans Date: Sun, 30 Jan 2022 16:18:39 +0000 Subject: [PATCH] Added some limitations on `ev_svec_t` so that it can be used in global scope Signed-off-by: Robear Selwans --- ev_vec.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ev_vec.h b/ev_vec.h index 460cf7a..d54f836 100644 --- a/ev_vec.h +++ b/ev_vec.h @@ -129,11 +129,12 @@ ev_vec_init_impl( #define __ev_svec_init_impl(T, len, ...) \ (ev_svec(T))&((struct { \ struct ev_vec_meta_t meta; \ - EV_ALIGNAS(TypeData(T).alignment) T data[len]; \ + EV_ALIGNAS(EV_ALIGNOF(T)) T data[len]; \ }) { \ .meta.length = len, \ .meta.capacity = len, \ - .meta.typeData = TypeData(T), \ + .meta.typeData.size = sizeof(T), \ + .meta.typeData.alignment = EV_ALIGNOF(T), \ .meta.allocationType = EV_VEC_ALLOCATION_TYPE_STACK, \ .data = __VA_ARGS__ \ }).data @@ -141,7 +142,7 @@ ev_vec_init_impl( #define __ev_svec_init_w_cap_impl(T, cap) \ (ev_svec(T))&((struct { \ struct ev_vec_meta_t meta; \ - EV_ALIGNAS(TypeData(T).alignment) T data[cap]; \ + EV_ALIGNAS(EV_ALIGNOF(T)) T data[cap]; \ }) { \ .meta.length = 0, \ .meta.capacity = cap, \