Initial commit: Go 1.23 release state

This commit is contained in:
Vorapol Rinsatitnon
2024-09-21 23:49:08 +10:00
commit 17cd57a668
13231 changed files with 3114330 additions and 0 deletions

View File

@@ -0,0 +1,16 @@
// 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 b
import "fmt"
type Foo[T1 ~string, T2 ~int] struct {
ValueA T1
ValueB T2
}
func (f *Foo[_, _]) String() string {
return fmt.Sprintf("%v %v", f.ValueA, f.ValueB)
}

View File

@@ -0,0 +1,23 @@
// 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.
// Test that type substitution and export/import works correctly even for a method of
// a generic type that has multiple blank type params.
package main
import (
"./b"
"fmt"
)
func main() {
foo := &b.Foo[string, int]{
ValueA: "i am a string",
ValueB: 123,
}
if got, want := fmt.Sprintln(foo), "i am a string 123\n"; got != want {
panic(fmt.Sprintf("got %s, want %s", got, want))
}
}