Correctly expand macro arguments

Fully expand macro arguments before expanding the macro body.