2013-02-03 06:44:03 +00:00
|
|
|
// errorcheck
|
|
|
|
|
|
|
|
// Copyright 2013 The Go Authors. All rights reserved.
|
|
|
|
// Use of this source code is governed by a BSD-style
|
|
|
|
// license that can be found in the LICENSE file.
|
|
|
|
|
|
|
|
// Ideal vs non-ideal bool. See issue 3915, 3923.
|
|
|
|
|
|
|
|
package p
|
|
|
|
|
|
|
|
type mybool bool
|
|
|
|
type mybool1 bool
|
|
|
|
|
|
|
|
var (
|
|
|
|
x, y int = 1, 2
|
|
|
|
c1 bool = x < y
|
|
|
|
c2 mybool = x < y
|
|
|
|
c3 mybool = c2 == (x < y)
|
|
|
|
c4 mybool = c2 == (1 < 2)
|
|
|
|
c5 mybool = 1 < 2
|
|
|
|
c6 mybool1 = x < y
|
2013-06-26 16:05:02 +00:00
|
|
|
c7 = c1 == c2 // ERROR "mismatched types|incompatible types"
|
|
|
|
c8 = c2 == c6 // ERROR "mismatched types|incompatible types"
|
|
|
|
c9 = c1 == c6 // ERROR "mismatched types|incompatible types"
|
2013-02-03 06:44:03 +00:00
|
|
|
_ = c2 && (x < y)
|
|
|
|
_ = c2 && (1 < 2)
|
2013-06-26 16:05:02 +00:00
|
|
|
_ = c1 && c2 // ERROR "mismatched types|incompatible types"
|
|
|
|
_ = c2 && c6 // ERROR "mismatched types|incompatible types"
|
|
|
|
_ = c1 && c6 // ERROR "mismatched types|incompatible types"
|
2013-02-03 06:44:03 +00:00
|
|
|
)
|