1  /* Test overflow in preprocessor arithmetic.  PR 55715.  */
       2  /* { dg-do preprocess } */
       3  /* { dg-options "-std=c99" } */
       4  
       5  #include <stdint.h>
       6  
       7  #if -1 - INTMAX_MIN
       8  #endif
       9  
      10  #if 0 - INTMAX_MIN /* { dg-warning "overflow" } */
      11  #endif
      12  
      13  #if 1 * INTMAX_MIN
      14  #endif
      15  
      16  #if -1 * INTMAX_MIN /* { dg-warning "overflow" } */
      17  #endif
      18  
      19  #if 0 * INTMAX_MIN
      20  #endif
      21  
      22  #if -INTMAX_MIN /* { dg-warning "overflow" } */
      23  #endif
      24  
      25  #if +INTMAX_MIN
      26  #endif
      27  
      28  #if INTMAX_MIN / 1
      29  #endif
      30  
      31  #if INTMAX_MIN / -1 /* { dg-warning "overflow" } */
      32  #endif
      33  
      34  #if UINTMAX_MAX * UINTMAX_MAX
      35  #endif
      36  
      37  #if UINTMAX_MAX / -1
      38  #endif
      39  
      40  #if UINTMAX_MAX + INTMAX_MAX
      41  #endif
      42  
      43  #if UINTMAX_MAX - INTMAX_MIN
      44  #endif