P99
#define P99_PASTE (   ...)    P00_PASTE(P00_NARG(__VA_ARGS__), __VA_ARGS__)

A left-to-right associative paste operator.

This macro avoids the ambiguity of the ## preprocessor operator which has no well defined associativity. With this macro here something like

 P99_PASTE(0.1E, -, 1)

is guaranteed to produce the token 0.1E-1, whereas the seemingly equivalent

 ETSAP(0.1E, -, 1)

is not valid: the intermediate operation to paste tokens `-' and `1' would result in an invalid token and is thus rejected.

This macro does the evaluation of the arguments first and then proceeds at the concatenation of the results.

Precondition:
the argumentlist should not be empty.

Definition at line 337 of file p99_logical.h.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Defines