Blob Blame History Raw
/* n_21.c:  Tokenization (No preprocessing tokens are merged implicitly).   */

#include    "defs.h"

main( void)
{
    int     a = 1, x = 2, y = -3;

    fputs( "started\n", stderr);

/* 21.1:    */
#define MINUS   -
    assert( -MINUS-a == -1);

/* 21.2:    */
#define sub( a, b)  a-b     /* '(a)-(b)' is better  */
#define Y   -y              /* '(-y)' is better     */
/*  x- -y   */
    assert( sub( x, Y) == -1);

    fputs( "success\n", stderr);
    return  0;
}