copy file (m.x) to (m.y)Name expressions are faster and more reliable/predictable than macro substitution. In fact, there are comparatively few valid reasons to use macro substitution at all. Offhand I can think only of computed SQL statements and function calls to computed names (cannot use DO (m.cPrg) because there is no TO clause that would allow catching the return value, and not all functions provide a reference parameter for the result).