Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

Required fields*

2
  • 1
    There is nothing in this answer that supports your claim that determination of nested macro arguments can stop once the end of the outer macro expansion is reached. Even if you read "within the expansion" like you do, it says "so that names of macros may be recognized within the expansion", and the name is f. In dds(eoe) su), dds(eoe) is first expanded to f(eoe,, giving f(eoe, su). Then, the scan for macro names starts at the beginning of the previous expansion result, at the f, where both macro arguments are seen. The only correct result is what GCC and clang give. Commented Mar 23, 2014 at 12:07
  • @hvd Yep, I was proof reading my answer and stumbled on that too. I think you're right. I am editing my answer right now. Commented Mar 23, 2014 at 12:17