Question: how to implement a macro E that expands to an integer constant expression such that ...
(E != (X) && E != (Y) && E != (Z))
... evaluates to 1 for every choice of X, Y, and Z as integer constant expressions with distinct, nonnegative values?
Example:
#define X 13
#define Y 45
#define Z 76
#define E FUNC(X,Y,Z)
#define FUNC(X,Y,Z) ??
E /* evaluates to any number distinct from all of 13, 45, and 76 */
Which formula to use? Any ideas?