X-Git-Url: https://git.xonotic.org/?p=xonotic%2Fgmqcc.git;a=blobdiff_plain;f=gmqcc.h;h=b3ba81782320d517ad4e6976416d3530fd8e6bbb;hp=cc952345986c7e6ae2578c73fcc48616ccd258a7;hb=73070395ebdf177b456bdaf52f75a3c3a40cd416;hpb=3a4aba0b31427a6cbea08a959aedf12c2e69a893 diff --git a/gmqcc.h b/gmqcc.h index cc95234..b3ba817 100644 --- a/gmqcc.h +++ b/gmqcc.h @@ -361,7 +361,7 @@ void _util_vec_grow(void **a, size_t i, size_t s); ) /* exposed interface */ -#define vec_meta(A) (((vector_t*)(A)) - 1) +#define vec_meta(A) (((vector_t*)((void*)A)) - 1) #define vec_free(A) ((void)((A) ? (mem_d((void*)vec_meta(A)), (A) = NULL) : 0)) #define vec_push(A,V) (GMQCC_VEC_WILLGROW((A),1), (A)[vec_meta(A)->used++] = (V)) #define vec_size(A) ((A) ? vec_meta(A)->used : 0) @@ -500,9 +500,9 @@ enum { #define CV_VAR -1 #define CV_WRONG 0x8000 /* magic number to help parsing */ -extern const char *type_name [TYPE_COUNT]; -extern uint16_t type_store_instr [TYPE_COUNT]; -extern uint16_t field_store_instr[TYPE_COUNT]; +extern const char *type_name [TYPE_COUNT]; +extern const uint16_t type_store_instr [TYPE_COUNT]; +extern const uint16_t field_store_instr[TYPE_COUNT]; /* * could use type_store_instr + INSTR_STOREP_F - INSTR_STORE_F @@ -510,10 +510,10 @@ extern uint16_t field_store_instr[TYPE_COUNT]; * instruction set, the old ones are left untouched, thus the _I instructions * are at a seperate place. */ -extern uint16_t type_storep_instr[TYPE_COUNT]; -extern uint16_t type_eq_instr [TYPE_COUNT]; -extern uint16_t type_ne_instr [TYPE_COUNT]; -extern uint16_t type_not_instr [TYPE_COUNT]; +extern const uint16_t type_storep_instr[TYPE_COUNT]; +extern const uint16_t type_eq_instr [TYPE_COUNT]; +extern const uint16_t type_ne_instr [TYPE_COUNT]; +extern const uint16_t type_not_instr [TYPE_COUNT]; typedef struct { uint32_t offset; /* Offset in file of where data begins */