Source file test/fixedbugs/issue22458.go
1 // compile 2 3 // Copyright 2017 The Go Authors. All rights reserved. 4 // Use of this source code is governed by a BSD-style 5 // license that can be found in the LICENSE file. 6 7 // Make sure KeepAlive introduces a use of the spilled variable. 8 9 package main 10 11 import "runtime" 12 13 type node struct { 14 next *node 15 } 16 17 var x bool 18 19 func main() { 20 var head *node 21 for x { 22 head = &node{head} 23 } 24 25 runtime.KeepAlive(head) 26 } 27