Initial commit: Go 1.23 release state
This commit is contained in:
29
test/fixedbugs/issue25507.go
Normal file
29
test/fixedbugs/issue25507.go
Normal file
@@ -0,0 +1,29 @@
|
||||
// errorcheck
|
||||
|
||||
// Copyright 2018 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.
|
||||
|
||||
// We have a limit of 1GB for stack frames.
|
||||
// Test that we extend that limit to include large argument/return areas.
|
||||
// Argument/return areas are part of the parent frame, not the frame itself,
|
||||
// so they need to be handled separately.
|
||||
|
||||
package main
|
||||
|
||||
// >1GB to trigger failure, <2GB to work on 32-bit platforms.
|
||||
type large struct {
|
||||
b [1500000000]byte
|
||||
}
|
||||
|
||||
func (x large) f1() int { // GC_ERROR "stack frame too large"
|
||||
return 5
|
||||
}
|
||||
|
||||
func f2(x large) int { // GC_ERROR "stack frame too large"
|
||||
return 5
|
||||
}
|
||||
|
||||
func f3() (x large, i int) { // GC_ERROR "stack frame too large"
|
||||
return
|
||||
}
|
||||
Reference in New Issue
Block a user