Initial commit: Go 1.23 release state
This commit is contained in:
31
test/typeparam/issue51355.go
Normal file
31
test/typeparam/issue51355.go
Normal file
@@ -0,0 +1,31 @@
|
||||
// compile
|
||||
|
||||
// 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 main
|
||||
|
||||
type Cache[E comparable] struct {
|
||||
adder func(...E)
|
||||
}
|
||||
|
||||
func New[E comparable]() *Cache[E] {
|
||||
c := &Cache[E]{}
|
||||
|
||||
c.adder = func(elements ...E) {
|
||||
for _, value := range elements {
|
||||
value := value
|
||||
go func() {
|
||||
println(value)
|
||||
}()
|
||||
}
|
||||
}
|
||||
|
||||
return c
|
||||
}
|
||||
|
||||
func main() {
|
||||
c := New[string]()
|
||||
c.adder("test")
|
||||
}
|
||||
Reference in New Issue
Block a user