// errorcheck -d=panic

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

// Issue 17588: internal compiler error in typecheckclosure()
// because in case of Func.Nname.Type == nil, Decldepth
// is not initialized in typecheckfunc(). This test
// produces that case.

package p

type F func(b T) // ERROR "T .*is not a type|expected type"

func T(fn F) {
	func() {
		fn(nil) // If Decldepth is not initialized properly, typecheckclosure() Fatals here.
	}()
}
