diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/pr19967.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/pr19967.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/pr19967.c b/gcc/testsuite/gcc.dg/pr19967.c new file mode 100644 index 000000000..85afeafe2 --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr19967.c @@ -0,0 +1,26 @@ +/* PR middle-end/19967 + These functions mentioned below are supposed to return char *. + However, fold_builtin_... had bugs that caused the return types to + be const char *. */ + +/* { dg-do compile } */ +/* { dg-options "-pedantic" } */ + +char *strchr(const char *, int); +char *strrchr(const char *, int); +char *index(const char *, int); +char *rindex(const char *, int); +char *strpbrk(const char *, const char *); +char *strstr(const char *, const char *); +char *p; + +void +f (void) +{ + p = strchr(__func__, 'f'); + p = strrchr(__func__, 'f'); + p = index(__func__, 'f'); + p = rindex(__func__, 'f'); + p = strpbrk(__func__, "f"); + p = strstr(__func__, "f"); +} |