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

     1  extern void abort(void);
     2  extern int inside_main;
     3  
     4  __attribute__ ((__noinline__))
     5  void *
     6  memchr (const void *s, int c, __SIZE_TYPE__ n)
     7  {
     8    const unsigned char uc = c;
     9    const unsigned char *sp;
    10  
    11  #ifdef __OPTIMIZE__
    12    if (inside_main)
    13      abort ();
    14  #endif
    15  
    16    sp = s;
    17    for (; n != 0; ++sp, --n)
    18      if (*sp == uc)
    19        return (void *) sp;
    20  
    21    return 0;
    22  }