Source file
test/fixedbugs/issue50854.go
1
2
3
4
5
6
7 package main
8
9
10
11
12 func f(p int64, x, y int64) bool { return -x <= p && p <= y }
13
14
15 func g(p int32, x, y int32) bool { return -x <= p && p <= y }
16
17
18
19
20 func h(p int64, x, y int64) bool { return -(x<<1) <= p && p <= y }
21
22
23 func k(p int32, x, y int32) bool { return -(1<<x) <= p && p <= y }
24
25
26 func check(b bool) {
27 if b {
28 return
29 }
30 panic("FAILURE")
31 }
32
33 func main() {
34 check(f(1, -1<<63, 1<<63-1))
35 check(g(1, -1<<31, 1<<31-1))
36 check(h(1, -1<<62, 1<<63-1))
37 check(k(1, 31, 1<<31-1))
38 }
39
View as plain text