Testsuite: fix analyzer tests on Darwin
[official-gcc.git] / gcc / testsuite / gcc.dg / analyzer / strcpy-3.c
bloba38f9a7641fed657aff4405e508a03e3ef8324a6
1 #include <string.h>
2 #include "analyzer-decls.h"
4 void test_1 (void)
6 char str[] = "Hello";
7 char buf[6];
8 char *result = strcpy (buf, str);
9 __analyzer_describe (1, result); /* { dg-warning "region_svalue.*?'buf'" } */
10 __analyzer_eval (result == buf); /* { dg-warning "TRUE" } */
11 __analyzer_eval (buf[0] == 'H'); /* { dg-warning "TRUE" } */
12 __analyzer_eval (buf[1] == 'e'); /* { dg-warning "TRUE" } */
13 __analyzer_eval (buf[2] == 'l'); /* { dg-warning "TRUE" } */
14 __analyzer_eval (buf[3] == 'l'); /* { dg-warning "TRUE" } */
15 __analyzer_eval (buf[4] == 'o'); /* { dg-warning "TRUE" } */
16 __analyzer_eval (buf[5] == 0); /* { dg-warning "TRUE" } */
17 __analyzer_eval (result[0] == 'H'); /* { dg-warning "TRUE" } */
18 __analyzer_eval (result[1] == 'e'); /* { dg-warning "TRUE" } */
19 __analyzer_eval (result[2] == 'l'); /* { dg-warning "TRUE" } */
20 __analyzer_eval (result[3] == 'l'); /* { dg-warning "TRUE" } */
21 __analyzer_eval (result[4] == 'o'); /* { dg-warning "TRUE" } */
22 __analyzer_eval (result[5] == 0); /* { dg-warning "TRUE" } */