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 9 package p 10 11 type mybool bool 12 type mybool1 bool 13 14 var ( 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