1/* e_19_3.t:    Redefinitions of macros.    */
2
3/* Excerpts from ISO C 3.8.3 "Examples".    */
4
5#define OBJ_LIKE        (1-1)
6#define FTN_LIKE(a)     ( a )
7
8/* The following redefinitions should be diagnosed. */
9
10/* 19.3:    */
11#define OBJ_LIKE        (0)     /* different token sequence     */
12
13/*  (1-1); or (0);  */
14    OBJ_LIKE;
15
16/* 19.4:    */
17#undef  OBJ_LIKE
18#define OBJ_LIKE        (1-1)
19#define OBJ_LIKE        (1 - 1) /* different white space        */
20
21/* 19.5:    */
22#define FTN_LIKE(b)     ( a )   /* different parameter usage    */
23
24/*  ( x ); or ( a); */
25    FTN_LIKE(x);
26
27/* 19.6:    */
28#undef  FTN_LIKE
29#define FTN_LIKE(a)     ( a )
30#define FTN_LIKE(b)     ( b )   /* different parameter spelling */
31
32/* 19.7:    Not in ISO C "Examples" */
33#define FTN_LIKE        OBJ_LIKE
34
35