aboutsummaryrefslogtreecommitdiff
path: root/test/fixedbugs/issue15013.go
blob: 9e218e6d81026f53d4a9869c0c7a847c39386cfc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// compile

// Copyright 2016 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.

// CL 21202 introduced a compiler crash in the handling of a varargs
// function in the same recursive group as a function that calls it.
// Nothing in the standard library caught the problem, so adding a test.

package p

func F1(p *int, a ...*int) (int, *int) {
	if p == nil {
		return F2(), a[0]
	}
	return 0, a[0]
}

func F2() int {
	var i0, i1 int
	a, _ := F1(&i0, &i1)
	return a
}