- size_t ret = 0, rc;
-
- rc = explain_name(buf, n, decl->declarators);
- ret += cdecl__advance(&buf, &n, rc);
-
- rc = explain_pre_specs(buf, n, decl->specifiers);
- ret += cdecl__advance(&buf, &n, rc);
-
- rc = explain_declarators(buf, n, decl->declarators);
- ret += cdecl__advance(&buf, &n, rc);
-
- return ret + explain_post_specs(buf, n, decl->specifiers);
+ explain_name(dst, decl->declarators);
+ explain_specs(dst, decl->specifiers, PRE_SPECS);
+ explain_declarators(dst, decl->declarators);
+ cdecl__emit_specs(dst, decl->specifiers, POST_SPECS);