Yep, agree with Chris. No need for any semicolon after the macro call.
But in my case, sometimes the habit of terminating any line of code with a semicolon takes over this understanding. Indeed, not a big sin.
Now, a situation that I found to be particularly confusing to understand for some sas coders is the need of a semicolon after the %if %then macro statement, say something like this:
%macro x(TAB,KEEP,VARS);
data _null_;
set &TAB %if &KEEP %then (keep = &VARS);;
run;
/* OR */
data _null_;
set &TAB %if &KEEP %then (keep = &VARS); end = _EOF;
run;
%mend x;
Cheers from Portugal.
Daniel Santos at www.cgd.pt.
... View more