modernc.org/cc@v1.0.1/testdata/gcc-6.3.0/gcc/testsuite/gcc.c-torture/execute/builtins/lib/strchr.c (about)

     1  extern void abort (void);
     2  extern int inside_main;
     3  
     4  __attribute__ ((__noinline__))
     5  char *
     6  strchr (const char *s, int c)
     7  {
     8  #ifdef __OPTIMIZE__
     9    if (inside_main)
    10      abort ();
    11  #endif
    12  
    13    for (;;)
    14      {
    15        if (*s == c)
    16  	return (char *) s;
    17        if (*s == 0)
    18  	return 0;
    19        s++;
    20      }
    21  }
    22  
    23  __attribute__ ((__noinline__))
    24  char *
    25  index (const char *s, int c)
    26  {
    27    return strchr (s, c);
    28  }