fix self-expanding macros