Change _IO_stderr_/_IO_stdin_/_IO_stdout to compat symbols [BZ #31766]
[glibc.git] / string / bug-strncat1.c
blobcdd214119127d6a41845752d2ff26cfe41a449f5
1 #undef __USE_STRING_INLINES
2 #define __USE_STRING_INLINES
3 #include <sys/cdefs.h>
4 #include <libc-diag.h>
5 #if __GNUC_PREREQ (8, 0)
6 /* GCC warns about strncat truncating output; this is deliberately
7 tested here. If fortify is enabled, it is also triggered by the
8 wrappers. */
9 DIAG_IGNORE_NEEDS_COMMENT (8, "-Wstringop-truncation");
10 #endif
11 #include <stdio.h>
12 #include <stdlib.h>
13 #include <string.h>
15 char d[3] = "\0\1\2";
17 int
18 main (void)
20 DIAG_PUSH_NEEDS_COMMENT;
21 strncat (d, "\5\6", 1);
22 DIAG_POP_NEEDS_COMMENT;
23 if (d[0] != '\5')
25 puts ("d[0] != '\\5'");
26 exit (1);
28 if (d[1] != '\0')
30 puts ("d[1] != '\\0'");
31 exit (1);
33 if (d[2] != '\2')
35 puts ("d[2] != '\\2'");
36 exit (1);
39 return 0;