diff --git a/src/cmd/compile/internal/types2/stdlib_test.go b/src/cmd/compile/internal/types2/stdlib_test.go index 108c0629c6..45c692d511 100644 --- a/src/cmd/compile/internal/types2/stdlib_test.go +++ b/src/cmd/compile/internal/types2/stdlib_test.go @@ -317,6 +317,7 @@ func TestStdFixed(t *testing.T) { "issue16369.go", // types2 handles this correctly - not an issue "issue18459.go", // types2 doesn't check validity of //go:xxx directives "issue18882.go", // types2 doesn't check validity of //go:xxx directives + "issue20027.go", // types2 does not have constraints on channel element size "issue20529.go", // types2 does not have constraints on stack size "issue22200.go", // types2 does not have constraints on stack size "issue22200b.go", // types2 does not have constraints on stack size diff --git a/src/go/types/stdlib_test.go b/src/go/types/stdlib_test.go index 4dd33a863e..8913c7d2c9 100644 --- a/src/go/types/stdlib_test.go +++ b/src/go/types/stdlib_test.go @@ -318,6 +318,7 @@ func TestStdFixed(t *testing.T) { "issue16369.go", // go/types handles this correctly - not an issue "issue18459.go", // go/types doesn't check validity of //go:xxx directives "issue18882.go", // go/types doesn't check validity of //go:xxx directives + "issue20027.go", // go/types does not have constraints on channel element size "issue20529.go", // go/types does not have constraints on stack size "issue22200.go", // go/types does not have constraints on stack size "issue22200b.go", // go/types does not have constraints on stack size diff --git a/test/fixedbugs/issue20027.go b/test/fixedbugs/issue20027.go new file mode 100644 index 0000000000..e93b359aeb --- /dev/null +++ b/test/fixedbugs/issue20027.go @@ -0,0 +1,13 @@ +// errorcheck + +// Copyright 2024 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 + +var _ chan [0x2FFFF]byte // ERROR "channel element type too large" +var _ = make(chan [0x2FFFF]byte) // ERROR "channel element type too large" + +var c1 chan [0x2FFFF]byte // ERROR "channel element type too large" +var c2 = make(chan [0x2FFFF]byte) // ERROR "channel element type too large"