Hi, listers
I'm having problems combining macrovariables when the first macro ends
with a backslash. Apparently, the end backslash is not included, and
the following macro is not unpacked. This is not a problem if the two
macros do not follow each other directly. The example below
illustrates the problem:
local indatadir e:\data\stata10\
local table mytable
di "indatadir <`indatadir'>"
di "table <`table'>"
// Backslash missing, macro `table' not unpacked:
di "`indatadir'`table'"
// Backslash ok and `table' unpacked when adding a sign (any letter)
behind the first macro:
di "`indatadir'_`table'"
The result is as follows:
local indatadir e:\data\stata10\
. local table mytable
.
. di "indatadir <`indatadir'>"
indatadir <e:\data\stata10\>
. di "table <`table'>"
table <mytable>
.
. // Backslash missing, macro `table' not unpacked:
. di "`indatadir'`table'"
e:\data\stata10`table'
. // Backslash ok and `table' unpacked when adding a sign (any letter)
behind the first macro:
. di "`indatadir'_`table'"
e:\data\stata10\_mytable
What is the reason behind this, and how can I work around it?
Cheers,
-Steinar
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/