Fix macro argument bug

Macro argument was called `str` while `string` was used in the body. This actually didn't result in a bug since all instances of the macro were called with a variable as argument named string. But it is better to fix this for future bugs that this may result in.