blob: bd1b6b99e982781721a6592beba0a231fe017cae (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
/* PR 17252. When a char * pointer P takes its own address, storing
into *P changes P itself. */
char *a;
main ()
{
/* Make 'a' point to itself. */
a = (char *)&a;
/* Change what 'a' is pointing to. */
a[0]++;
/* If a's memory tag does not contain 'a' in its alias set, we will
think that this predicate is superfluous and change it to
'if (1)'. */
if (a == (char *)&a)
abort ();
return 0;
}
|