1 /* Another test case for over-eager multiple include optimization,
2 where the leading "#if !defined" expression is obtained partially,
3 or wholly, from macros. Neil Booth, 30 Sep 2001. */
5 /* { dg-do compile } */
6 /* { dg-options "" } */
8 extern void abort (void);
10 /* Each include file should not be subject to MI optimisation, since
11 macro definitions can change. Each header increments the variable
14 The first set of inclusions gets the headers into CPP's cache, but
15 does nothing since VAR is not defined. The second set should each
16 increment VAR, since none of the initial set should have been
17 flagged as optimizable. */
22 #define DEFINED defined (guard)
23 #define NOT_DEFINED ! defined (guard)
31 /* Define the macro guard, and redefine the macros to something that
32 forces compilation of the conditional blocks. */
50 unsigned int five
= 0;