1// errorcheck
2
3// Copyright 2013 The Go Authors.  All rights reserved.
4// Use of this source code is governed by a BSD-style
5// license that can be found in the LICENSE file.
6
7// Ideal vs non-ideal bool. See issue 3915, 3923.
8
9package p
10
11type mybool bool
12type mybool1 bool
13
14var (
15	x, y int = 1, 2
16	c1 bool = x < y
17	c2 mybool = x < y
18	c3 mybool = c2 == (x < y)
19	c4 mybool = c2 == (1 < 2)
20	c5 mybool = 1 < 2
21	c6 mybool1 = x < y
22	c7 = c1 == c2 // ERROR "mismatched types|incompatible types"
23	c8 = c2 == c6 // ERROR "mismatched types|incompatible types"
24	c9 = c1 == c6 // ERROR "mismatched types|incompatible types"
25	_ = c2 && (x < y)
26	_ = c2 && (1 < 2)
27	_ = c1 && c2 // ERROR "mismatched types|incompatible types"
28	_ = c2 && c6 // ERROR "mismatched types|incompatible types"
29	_ = c1 && c6 // ERROR "mismatched types|incompatible types"
30)
31