1  /* Another test case for over-eager multiple include optimization.
       2     This one distilled from glibc's setlocale.c and categories.def.  */
       3  /* { dg-do compile } */
       4  
       5  #define X a
       6  #include "mi3.def"
       7  #undef X
       8  
       9  #define X b
      10  #include "mi3.def"
      11  #undef X
      12  
      13  #include "mi3.h"
      14  #include "mi3.h"  /* The second include declares variable c.  */
      15  
      16  int
      17  main(void)
      18  {
      19    return a + b + c;
      20  }