remove function call by macro, simpler directive