#undef NAME #undef FIELD #undef END #define NAME(x) void reset##x(x##_t* value) { \ *value = { #define FIELD(type, name, def, doc) .name = def, #define END(x) }; }