27-04-2006, 02:29 PM
I agree with the statement:
... when both the # and the ## operator are in the same macro. However, can someone provide an example when only one of the operators (only #, or only ##) are used more than once in a single macro definition?
My recommendation is to use the following wording:
Can someone comment on why the original wording would be preferred to this alternative? My second example doesn't have any issues with operator evaluation order that I can identify, yet it violates the original wording. With the updated wording, it would be okay, while the first example is still a violation -- as it should be, since it does have an issue with order of evaluation.
Quote:result can depend o[n] the order of evaluation which is unspecifed
... when both the # and the ## operator are in the same macro. However, can someone provide an example when only one of the operators (only #, or only ##) are used more than once in a single macro definition?
My recommendation is to use the following wording:
Quote:Rule 19.12 (req): The # and ## operators shall not be used together in the same macro definition.
Can someone comment on why the original wording would be preferred to this alternative? My second example doesn't have any issues with operator evaluation order that I can identify, yet it violates the original wording. With the updated wording, it would be okay, while the first example is still a violation -- as it should be, since it does have an issue with order of evaluation.