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
45