misc/liblua/lmem.h
changeset 10017 de822cd3df3a
parent 2812 0a24853de796
equal deleted inserted replaced
10015:4feced261c68 10017:de822cd3df3a
    11 #include <stddef.h>
    11 #include <stddef.h>
    12 
    12 
    13 #include "llimits.h"
    13 #include "llimits.h"
    14 #include "lua.h"
    14 #include "lua.h"
    15 
    15 
    16 #define MEMERRMSG	"not enough memory"
    16 #define MEMERRMSG   "not enough memory"
    17 
    17 
    18 
    18 
    19 #define luaM_reallocv(L,b,on,n,e) \
    19 #define luaM_reallocv(L,b,on,n,e) \
    20 	((cast(size_t, (n)+1) <= MAX_SIZET/(e)) ?  /* +1 to avoid warnings */ \
    20     ((cast(size_t, (n)+1) <= MAX_SIZET/(e)) ?  /* +1 to avoid warnings */ \
    21 		luaM_realloc_(L, (b), (on)*(e), (n)*(e)) : \
    21         luaM_realloc_(L, (b), (on)*(e), (n)*(e)) : \
    22 		luaM_toobig(L))
    22         luaM_toobig(L))
    23 
    23 
    24 #define luaM_freemem(L, b, s)	luaM_realloc_(L, (b), (s), 0)
    24 #define luaM_freemem(L, b, s)   luaM_realloc_(L, (b), (s), 0)
    25 #define luaM_free(L, b)		luaM_realloc_(L, (b), sizeof(*(b)), 0)
    25 #define luaM_free(L, b)     luaM_realloc_(L, (b), sizeof(*(b)), 0)
    26 #define luaM_freearray(L, b, n, t)   luaM_reallocv(L, (b), n, 0, sizeof(t))
    26 #define luaM_freearray(L, b, n, t)   luaM_reallocv(L, (b), n, 0, sizeof(t))
    27 
    27 
    28 #define luaM_malloc(L,t)	luaM_realloc_(L, NULL, 0, (t))
    28 #define luaM_malloc(L,t)    luaM_realloc_(L, NULL, 0, (t))
    29 #define luaM_new(L,t)		cast(t *, luaM_malloc(L, sizeof(t)))
    29 #define luaM_new(L,t)       cast(t *, luaM_malloc(L, sizeof(t)))
    30 #define luaM_newvector(L,n,t) \
    30 #define luaM_newvector(L,n,t) \
    31 		cast(t *, luaM_reallocv(L, NULL, 0, n, sizeof(t)))
    31         cast(t *, luaM_reallocv(L, NULL, 0, n, sizeof(t)))
    32 
    32 
    33 #define luaM_growvector(L,v,nelems,size,t,limit,e) \
    33 #define luaM_growvector(L,v,nelems,size,t,limit,e) \
    34           if ((nelems)+1 > (size)) \
    34           if ((nelems)+1 > (size)) \
    35             ((v)=cast(t *, luaM_growaux_(L,v,&(size),sizeof(t),limit,e)))
    35             ((v)=cast(t *, luaM_growaux_(L,v,&(size),sizeof(t),limit,e)))
    36 
    36