go/test/fixedbugs/issue7550.go
Dave Cheney 9121e7e4df runtime: check that new slice cap doesn't overflow
Fixes #7550.

LGTM=iant
R=golang-codereviews, iant, josharian
CC=golang-codereviews
https://golang.org/cl/83520043
2014-04-03 13:44:44 +11:00

27 lines
551 B
Go

// run
// Copyright 2014 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
func shouldPanic(f func()) {
defer func() {
if recover() == nil {
panic("not panicking")
}
}()
f()
}
func f() {
length := int(^uint(0) >> 1)
a := make([]struct{}, length)
b := make([]struct{}, length)
_ = append(a, b...)
}
func main() {
shouldPanic(f)
}