typedef struct Ref Ref; struct Ref { long ref; }; static void incref(Ref *r) { r->ref++; } static long decref(Ref *r) { return --(r->ref); }