I suggest redefining json_t someday so that it becomes 8 bytes long instead of 16 where size_t takes 8. Isn't 32 bits enough for a reference counter? ``` typedef struct json_t { json_type type; // most likely 4 bytes volatile unsigned refcount; // should be 4 too } json_t; ```