Understanding Macro Expansion Avoidance in Software Specifications