Alessandro Bonazzi
e075990ed3
Files correlati : Commento : Aggiunto il preprocessore c++ mcpp per sostituire il compilatore nella compilazione delle maschere.
19 lines
500 B
C
19 lines
500 B
C
/* e_25_6.c: Macro arguments are pre-expanded separately. */
|
|
|
|
/* 25.6: */
|
|
#define sub( x, y) (x - y)
|
|
#define head sub(
|
|
#define body(x,y) x,y
|
|
#define tail )
|
|
#define head_body_tail( a, b, c) a b c
|
|
/* "head" is once expanded to "sub(", then rescanning of "sub(" causes an
|
|
uncompleted macro call. Expansion of an argument should complete
|
|
within the argument. */
|
|
head_body_tail( head, body(a,b), tail);
|
|
|
|
main( void)
|
|
{
|
|
return 0;
|
|
}
|
|
|