> Your problem is insufficient quoting. You should > _always_ quote the first argument to define() so that you > don't end up defining the expansion of the earlier > definition of a macro that you intended to redefine. > Likewise, you generally want to follow the rule of thumb of > one level of quotes per macro invocation, except where you > are specifically trying to protect an active m4 character > from interpretation by m4 (such as comma), where you use > double quotes.
You are absolutely right. Although I can't change the macro invocation format, triple-quoting the comma in the macro definition fixes it. Thank you so much. Jeff
