(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.c-torture/
execute/
builtins/
lib/
strncpy.c
       1  extern void abort(void);
       2  extern int inside_main;
       3  
       4  typedef __SIZE_TYPE__ size_t;
       5  
       6  __attribute__ ((__noinline__))
       7  char *
       8  strncpy(char *s1, const char *s2, size_t n)
       9  {
      10    char *dest = s1;
      11  #ifdef __OPTIMIZE__
      12    if (inside_main)
      13      abort();
      14  #endif
      15    for (; *s2 && n; n--)
      16      *s1++ = *s2++;
      17    while (n--)
      18      *s1++ = 0;
      19    return dest;
      20  }
      21