/
/
opt
/
golang
/
1.19.4
/
src
/
go
/
types
/
testdata
/
fixedbugs
Server: in-mum-web1112.main-hosting.eu (62.72.28.111)
You: 216.73.216.137
PHP 8.3.16
Dir:
/opt/golang/1.19.4/src/go/types/testdata/fixedbugs
Edit:
/opt/golang/1.19.4/src/go/types/testdata/fixedbugs/issue50929.go
// Copyright 2022 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 is tested when running "go test -run Manual" // without source arguments. Use for one-off debugging. package p import "fmt" type F[A, B any] int func G[A, B any](F[A, B]) { } func _() { // TODO(gri) only report one error below (issue #50932) var x F /* ERROR got 1 arguments but 2 type parameters */ [int] G(x /* ERROR does not match */) } // test case from issue // (lots of errors but doesn't crash anymore) type RC[G any, RG any] interface { ~[]RG } type RG[G any] struct{} type RSC[G any] []*RG[G] type M[Rc RC[G, RG], G any, RG any] struct { Fn func(Rc) } type NFn[Rc RC[G, RG], G any, RG any] func(Rc) func NC[Rc RC[G, RG], G any, RG any](nFn NFn[Rc, G, RG]) { var empty Rc nFn(empty) } func NSG[G any](c RSC[G]) { fmt.Println(c) } func MMD[Rc RC /* ERROR got 1 arguments */ [RG], RG any, G any]() M /* ERROR got 2 arguments */ [Rc, RG] { var nFn NFn /* ERROR got 2 arguments */ [Rc, RG] var empty Rc switch any(empty).(type) { case BC /* ERROR undeclared name: BC */ : case RSC[G]: nFn = NSG /* ERROR cannot use NSG\[G\] */ [G] } return M /* ERROR got 2 arguments */ [Rc, RG]{ Fn: func(rc Rc) { NC(nFn /* ERROR does not match */ ) }, } return M /* ERROR got 2 arguments */ [Rc, RG]{} }
Ukuran: 1.4 KB