OSDN Git Service

PR 18785
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / charset / builtin1.c
1 /* isdigit(c) can be optimized to ((unsigned)c) - '0' <= 9, but only if
2    we know the correct value of '0'.  PR 18785.  */
3
4 /* { dg-do run } */
5 /* { dg-options "-O2 -fno-inline -fexec-charset=IBM-1047" } */
6
7 extern int isdigit(int);
8 extern void abort(void);
9
10 static int str1(void) { return '1'; }
11 static int strA(void) { return 'A'; }
12
13 int
14 main(void)
15 {
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;
25 }