I am wondering does there exist a scenario that the "+" operator must be masked by quoting functions such as %STR or %BQUOTE? In SAS documentation, it states that "+" may need to be masked "To prevent it from being treated as an operator in the argument of an %EVAL function". However, I tested a couple of toy examples and found that directly typing "+" and using "%str(+)" makes no difference.
For example, both "%let var1 = A+B;" and "%let var2 = %str(A+B)" resolve to "A+B" when &var1/&var2 is referenced -- there are no error/warning messages in the log. Therefore, it seems that SAS never misinterprets "+".
So my question is, could anyone construct a specific example that enclosing the "+" (or similar operators such as "=, -, *") with quoting function is a must? That is, without quoting it, the SAS will issue an error? Thank you very much!
... View more