| Server IP : 217.160.0.135 / Your IP : 216.73.217.85 Web Server : Apache System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64 User : sws1074145052 ( 1074145052) PHP Version : 8.3.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /lib/go-1.23/src/internal/types/testdata/fixedbugs/ |
Upload File : |
// 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.
package p
type S[A, B any] struct {
f int
}
func (S[A, B]) m() {}
// TODO(gri): with type-type inference enabled we should only report one error
// below. See issue #50588.
func _[A any](s S /* ERROR "not enough type arguments for type S: have 1, want 2" */ [A]) {
// we should see no follow-on errors below
s.f = 1
s.m()
}
// another test case from the issue
func _() {
X /* ERROR "cannot infer Q" */ (Interface[*F /* ERROR "not enough type arguments for type F: have 1, want 2" */ [string]](Impl{}))
}
func X[Q Qer](fs Interface[Q]) {
}
type Impl struct{}
func (Impl) M() {}
type Interface[Q Qer] interface {
M()
}
type Qer interface {
Q()
}
type F[A, B any] struct{}
func (f *F[A, B]) Q() {}