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,9 @@
// 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 a
type G[T any] struct {
x T
}

View File

@@ -0,0 +1,24 @@
// 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 "./a"
type T struct { a int }
var I interface{} = a.G[T]{}
//go:noinline
func F(x interface{}) {
switch x.(type) {
case a.G[T]:
case int:
panic("bad")
case float64:
panic("bad")
default:
panic("bad")
}
}

View File

@@ -0,0 +1,24 @@
// 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
import (
"./a"
"./b"
)
func main() {
switch b.I.(type) {
case a.G[b.T]:
case int:
panic("bad")
case float64:
panic("bad")
default:
panic("bad")
}
b.F(a.G[b.T]{})
}