// 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. // This file contains test cases for interfaces containing // constraint elements. package p type _ interface { m() ~int ~int|string E } type _ interface { m() ~int int | string int | ~string ~int | ~string } type _ interface { m() ~int T[int, string] | string int | ~T[string, struct{}] ~int | ~string } type _ interface { int []byte [10]int struct{} *int func() interface{} map[string]int chan T chan<- T <-chan T T[int] } type _ interface { int | string []byte | string [10]int | string struct{} | string *int | string func() | string interface{} | string map[string]int | string chan T | string chan<- T | string <-chan T | string T[int] | string } type _ interface { ~int | string ~[]byte | string ~[10]int | string ~struct{} | string ~*int | string ~func() | string ~interface{} | string ~map[string]int | string ~chan T | string ~chan<- T | string ~<-chan T | string ~T[int] | string }