/* { dg-do run } */ /* { dg-options "-O2 -fdump-tree-strlen" } */ #include "strlenopt.h" volatile int v; size_t f1 (char *a1) { v += 1; size_t x = strlen (a1); char *a2 = a1 + x; a2[0] = '1'; a2[1] = '2'; a2[2] = '3'; a2[3] = 0; return strlen (a1); } int main () { char a[30]; strcpy (a, "abcd"); if (f1 (a) != 7) abort (); return 0; } /* { dg-final { scan-tree-dump-times "strlen \\(" 1 "strlen1" } } */