Argument substitution

Previous Table of Contents "New C Standard" commentary

1945 After the arguments for the invocation of a function-like macro have been identified, argument substitution takes place.

1946 A parameter in the replacement list, unless preceded by a # or ## preprocessing token or followed by a ## preprocessing token (see below), is replaced by the corresponding argument after all macros contained therein have been expanded.

1947 Before being substituted, each argument's preprocessing tokens are completely macro replaced as if they formed the rest of the preprocessing file;

1948 no other preprocessing tokens are available.

1949 An identifier __VA_ARGS__ that occurs in the replacement list shall be treated as if it were a parameter, and the variable arguments shall form the preprocessing tokens used to replace it.


Created at: 2008-01-30 02:39:45 The text from WG14/N1256 is copyright © ISO