Only stack macros when necessary.
Pushing and popping symbol containers is pretty expensive, so try to do it less.