diff --git a/vlib/v/gen/cheaders.v b/vlib/v/gen/cheaders.v index b15c7f1a06..b3a4b17459 100644 --- a/vlib/v/gen/cheaders.v +++ b/vlib/v/gen/cheaders.v @@ -267,7 +267,8 @@ static void* g_live_info = NULL; //============================== HELPER C MACROS =============================*/ //#define tos4(s, slen) ((string){.str=(s), .len=(slen)}) -#define _SLIT(s) ((string){.str=(byteptr)(s), .len=(strlen(s)), .is_lit=1}) +// `"" s` is used to enforce a string literal argument +#define _SLIT(s) ((string){.str=(byteptr)("" s), .len=(sizeof(s)-1), .is_lit=1}) #define _PUSH_MANY(arr, val, tmp, tmp_typ) {tmp_typ tmp = (val); array_push_many(arr, tmp.data, tmp.len);} #define _IN(typ, val, arr) array_##typ##_contains(arr, val) #define _IN_MAP(val, m) map_exists(m, val)