SYMBOLGEN System Option

Specifies whether the results of resolving macro variable references are written to the SAS log for debugging.
Valid in: Configuration fileOPTIONS window OPTIONS statementSAS invocation
PROC OPTIONS GROUP= MACRO

LOGCONTROL

Type: System option
Alias: SGEN | NOSGEN
Default: NOSYMBOLGEN
See: The SAS Log in SAS Language Reference: Concepts

Syntax

SYMBOLGEN | NOSYMBOLGEN

Required Arguments

SYMBOLGEN
displays the results of resolving macro variable references. This option is useful for debugging.
NOSYMBOLGEN
does not display results of resolving macro variable references.

Details

SYMBOLGEN displays the results in this form:
SYMBOLGEN: Macro variable name resolves to value
SYMBOLGEN also indicates when a double ampersand (&&) resolves to a single ampersand (&).

Example: Tracing Resolution of Macro Variable References

In this example, SYMBOLGEN traces the resolution of macro variable references when the macros MKTITLE and RUNPLOT execute:
%macro mktitle(proc,data);
    title "%upcase(&proc) of %upcase(&data)";
%mend mktitle;
%macro runplot(ds);
   %if %sysprod(graph)=1 %then
      %do;
         %mktitle (gplot,&ds)
         proc gplot data=&ds;
            plot style*price
                / haxis=0 to 150000 by 50000;
         run;
         quit;
      %end;
   %else
      %do;
         %mktitle (plot,&ds)
         proc plot data=&ds;
            plot style*price;
         run;
         quit;
      %end;
%mend runplot;
%runplot(sasuser.houses)
When this program executes, this SYMBOLGEN output is written to the SAS log:
SYMBOLGEN:  Macro variable DS resolves to sasuser.houses
SYMBOLGEN:  Macro variable PROC resolves to gplot
SYMBOLGEN:  Macro variable DATA resolves to sasuser.houses
SYMBOLGEN:  Macro variable DS resolves to sasuser.houses