make Data_Make_Struct a statement to make it C99 compatible

parent 75f5535c
...@@ -28,11 +28,11 @@ struct RData *mrb_data_object_alloc(mrb_state *mrb, struct RClass* klass, void * ...@@ -28,11 +28,11 @@ struct RData *mrb_data_object_alloc(mrb_state *mrb, struct RClass* klass, void *
#define Data_Wrap_Struct(mrb,klass,type,ptr)\ #define Data_Wrap_Struct(mrb,klass,type,ptr)\
mrb_data_object_alloc(mrb,klass,ptr,type) mrb_data_object_alloc(mrb,klass,ptr,type)
#define Data_Make_Struct(mrb,klass,strct,type,sval,data) (\ #define Data_Make_Struct(mrb,klass,strct,type,sval,data) do { \
sval = mrb_malloc(mrb, sizeof(strct)),\ sval = mrb_malloc(mrb, sizeof(strct)); \
{ static const strct zero = { 0 }; *sval = zero; },\ { static const strct zero = { 0 }; *sval = zero; };\
data = Data_Wrap_Struct(mrb,klass,type,sval)\ data = Data_Wrap_Struct(mrb,klass,type,sval);\
) } while (0)
#define RDATA(obj) ((struct RData *)((obj).value.p)) #define RDATA(obj) ((struct RData *)((obj).value.p))
#define DATA_PTR(d) (RDATA(d)->data) #define DATA_PTR(d) (RDATA(d)->data)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment