HEX
Server: Apache
System: FreeBSD www860.sakura.ne.jp 13.0-RELEASE-p14 FreeBSD 13.0-RELEASE-p14 #2: Mon Dec 9 13:54:55 JST 2024 root@www5301.sakura.ne.jp:/usr/obj/usr/src/amd64.amd64/sys/GENERIC amd64
User: yoyo0427 (1306)
PHP: 8.3.8
Disabled: NONE
Upload Files
File: //usr/local/go/test/fixedbugs/issue5607.go
// run

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

// Issue 5607: generation of init() function incorrectly
// uses initializers of blank variables inside closures.

package main

var Test = func() {
	var mymap = map[string]string{"a": "b"}

	var innerTest = func() {
		// Used to crash trying to compile this line as
		// part of init() (funcdepth mismatch).
		var _, x = mymap["a"]
		println(x)
	}
	innerTest()
}

var Test2 = func() {
	// The following initializer should not be part of init()
	// The compiler used to generate a call to Panic() in init().
	var _, x = Panic()
	_ = x
}

func Panic() (int, int) {
	panic("omg")
	return 1, 2
}

func main() {}