blob: 5d8908f0352133aff735618dea123b06504dd78f (
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
|
/* PR sanitizer/81281 */
void
foo (unsigned p, unsigned a, unsigned b)
{
unsigned q = p + 7;
if (a - (1U + __INT_MAX__) >= 2)
__builtin_unreachable ();
int d = p + b;
int c = p + a;
if (c - d != __INT_MAX__)
__builtin_abort ();
}
void
bar (unsigned p, unsigned a)
{
unsigned q = p + 7;
if (a - (1U + __INT_MAX__) >= 2)
__builtin_unreachable ();
int c = p;
int d = p + a;
if (c - d != -__INT_MAX__ - 1)
__builtin_abort ();
}
int
main ()
{
foo (-1U, 1U + __INT_MAX__, 1U);
bar (-1U, 1U + __INT_MAX__);
return 0;
}
|