Re: %symdel problem

  • Follow


Hello Mariusz

Interesting question ... I do get with SAS 8.2 (TS2M0) on Win

/Magnus

<code>

 %macro mvdel(var);
 %put;
 %put >>>>>>>>>>> Running mvdel;
 %put var = &var;
 %symdel &var;
 %put >>>>>>>>>>> End of mvdel;
 %put;
 %mend mvdel;

 %let test=1;

 %put -----------------------------------------------------;
 %put _user_;
 %put -----------------------------------------------------;

 %mvdel(test);

 %put -----------------------------------------------------;
 %put _user_;
 %put -----------------------------------------------------;

</code>


<log>
67
68    %let test=1;
69
70    %put -----------------------------------------------------;
-----------------------------------------------------
71    %put _user_;
GLOBAL SYSDBMSG
GLOBAL TEST 1
GLOBAL SYSDBRC 0
72    %put -----------------------------------------------------;
-----------------------------------------------------
73
74    %mvdel(test);

>>>>>>>>>>> Running mvdel
var = test
>>>>>>>>>>> End of mvdel

75
76    %put -----------------------------------------------------;
-----------------------------------------------------
77    %put _user_;
GLOBAL SYSDBMSG
GLOBAL SYSDBRC 0
78    %put -----------------------------------------------------;
-----------------------------------------------------

</log>



On Sun, 31 Aug 2003 11:46:40 +0200, Mariusz Gromada <mariusz.gromada@WP.PL>
wrote:

>Look here:
>
>----------- 1 -----------
>%let test=1;
>%symdel test;
>
>log:
>27   %let test=1;
>28   %symdel test;
>
>
>-- macro-variable test deleted.
>
>----------- 2 -----------
>%let test=1;
>%let var=test;
>%symdel &var;
>
>log:
>33   %let test=1;
>34   %let var=test;
>35   %symdel &var;
>SYMBOLGEN:  Macro variable VAR resolves to test
>
>-- macro-variable test deleted.
>
>----------- 3 -----------
>%macro mvdel(var);
>        %put var = &var;
>        %symdel &var;
>%mend mvdel;
>
>%let test=1;
>%mvdel(test);
>
>log:
>54   %let test=1;
>55   %mvdel(test);
>SYMBOLGEN:  Macro variable VAR resolves to test
>var = test
>ERROR: Macro variable name & must start with a letter or underscore.
>WARNING: Attempt to delete macro variable VAR failed. Variable not found.
>
>------------
>Macro-variable test not deleted. Why &var in macro mvdel and line with
>%symdel don't resolve to test (in line with %put &var everything is ok)?
>
>--
>Mariusz Gromada
>http://atraktor.ask33.net/
0
Reply magnus.mengelbier (37) 9/1/2003 7:52:51 AM


0 Replies
36 Views

(page loaded in 0.024 seconds)


Reply: