Source file
test/ken/cplx1.go
1
2
3
4
5
6
7
8
9 package main
10
11 const (
12 R = 5
13 I = 6i
14
15 C1 = R + I
16 )
17
18 func main() {
19 var b bool
20
21
22 b = (5 + 6i) == C1
23 if !b {
24 println("const bool 1", b)
25 panic("fail")
26 }
27
28 b = (5 + 6i) != C1
29 if b {
30 println("const bool 2", b)
31 panic("fail")
32 }
33
34 b = C1 == (5 + 6i)
35 if !b {
36 println("const bool 3", b)
37 panic("fail")
38 }
39
40 b = C1 != (5 + 6i)
41 if b {
42 println("const bool 4", b)
43 panic("fail")
44 }
45
46
47 booltest(5+6i, true)
48 booltest(5+7i, false)
49 booltest(6+6i, false)
50 booltest(6+9i, false)
51 }
52
53 func booltest(a complex64, r bool) {
54 var b bool
55
56 b = a == C1
57 if b != r {
58 println("param bool 1", a, b, r)
59 panic("fail")
60 }
61
62 b = a != C1
63 if b == r {
64 println("param bool 2", a, b, r)
65 panic("fail")
66 }
67
68 b = C1 == a
69 if b != r {
70 println("param bool 3", a, b, r)
71 panic("fail")
72 }
73
74 b = C1 != a
75 if b == r {
76 println("param bool 4", a, b, r)
77 panic("fail")
78 }
79
80 if r {
81 if a != C1 {
82 println("param bool 5", a, b, r)
83 panic("fail")
84 }
85 if C1 != a {
86 println("param bool 6", a, b, r)
87 panic("fail")
88 }
89 } else {
90 if a == C1 {
91 println("param bool 6", a, b, r)
92 panic("fail")
93 }
94 if C1 == a {
95 println("param bool 7", a, b, r)
96 panic("fail")
97 }
98 }
99 }
100
View as plain text