
In debug mode, the %RETURN% macro failed if the value of some returned variables contained a '?'.
The fix was simple: Replace the '?' by something else while going through the return magic, then change that back to a '?'. (Other problematic characters were already converted that way, and the performance is good.)
Now the root cause was in a for loop that processes every variables returned, and obviously the '*' character causes the same problem...
... But then I hit a wall: The string replacement syntax %var:OLD=NEW% does not work for asterisks in the OLD string. Contrary to question marks, they're interpreted as wild cards.
I tried escaping the asterisk with a caret, but this does not help.
Any idea on how to do that?