That is not a test for existence. That is a test for whether it is empty. They are two different things. For example if I want to write a macro than can optionally update the macro variable RETURN I could add this line of code to the top of the macro to check if the macro variable exists and if it doesn't make a local version so that the value is not returned. %if not %symexist(RETURN) %then %local return ; Notice that this will work better than adding a %GLOBAL statement since it will allow for the existence of the macro variable in the local scope of a calling macro environment.
... View more