aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/Wrestrict-4.c
blob: e7b62af9cc756b2aa567b513077a7e86a6cefbdb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
/* PR tree-optimization/83603 - ICE in builtin_memref at
   gcc/gimple-ssa-warn-restrict.c:238
   Test to verify that invalid calls to built-in functions declared
   without a prototype don't cause an ICE.
   { dg-do compile }
   { dg-prune-output "conflicting types for built-in" }
   { dg-options "-std=gnu17 -O2 -Warray-bounds -Wrestrict" } */

void* memcpy ();
void* memmove ();
char* stpcpy ();
char* strcat ();
char* strcpy ();
char* strncat ();
char* strncpy ();

void* test_memcpy_0 ()
{
  return memcpy ();
}

void* test_memcpy_1 (void *d)
{
  return memcpy (d);
}

void* test_memcpy_2 (void *d, const void *s)
{
  return memcpy (d, s);
}


void* test_memmove_0 ()
{
  return memmove ();
}

void* test_memmove_1 (void *d)
{
  return memmove (d);
}

void* test_memmove_2 (void *d, const void *s)
{
  return memmove (d, s);
}


void* test_stpcpy_0 ()
{
  return stpcpy ();
}

void* test_stpcpy_1 (char *d)
{
  return stpcpy (d);
}


char* test_strcat_0 ()
{
  return strcat ();
}

char* test_strcat_1 (char *d)
{
  return strcat (d);
}


void* test_strcpy_0 ()
{
  return strcpy ();
}

void* test_strcpy_1 (char *d)
{
  return strcpy (d);
}


char* test_strncat_0 ()
{
  return strncat ();
}

char* test_strncat_1 (char *d)
{
  return strncat (d);
}

char* test_strncat_2 (char *d, const char *s)
{
  return strncat (d, s);
}


void* test_strncpy_0 ()
{
  return strncpy ();
}

void* test_strncpy_1 (char *d)
{
  return strncpy (d);
}

void* test_strncpy_2 (char *d, const char *s)
{
  return strncpy (d, s);
}

/* { dg-prune-output "\\\[-Wbuiltin-declaration-mismatch]" } */