blob: 46b1e71a3b95cfb43cfd760524c89d4054738b9c [file] [log] [blame]
// Copyright 2021 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.
// Verify that we get an empty type set (not just an error)
// when using an invalid ~A.
package p
type A int
type C interface {
~ /* ERROR invalid use of ~ */ A
}
func f[_ C]() {}
func g[_ interface{ C }]() {}
func h[_ C | int]() {}
func _() {
_ = f[int /* ERROR cannot implement C \(empty type set\) */]
_ = g[int /* ERROR cannot implement interface{C} \(empty type set\) */]
_ = h[int]
}