PR 18785
[official-gcc.git] / gcc / testsuite / gcc.dg / charset / builtin1.c
blobc15c06ed73cb8814e843719affcb27bf6755bdb7
1 /* isdigit(c) can be optimized to ((unsigned)c) - '0' <= 9, but only if
2 we know the correct value of '0'. PR 18785. */
4 /* { dg-do run } */
5 /* { dg-options "-O2 -fno-inline -fexec-charset=IBM-1047" } */
7 extern int isdigit(int);
8 extern void abort(void);
10 static int str1(void) { return '1'; }
11 static int strA(void) { return 'A'; }
13 int
14 main(void)
16 if (!isdigit('1'))
17 abort();
18 if (isdigit('A'))
19 abort();
20 if (!isdigit(str1()))
21 abort();
22 if (isdigit(strA()))
23 abort();
24 return 0;