append macros that return an item with semicolon