...
Run Format

Source file test/fixedbugs/bug474.go

Documentation: test/fixedbugs

  // 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.
  
  // Bug in method values: escape analysis was off.
  
  package main
  
  import "sync"
  
  var called = false
  
  type T struct {
  	once sync.Once
  }
  
  func (t *T) M() {
  	called = true
  }
  
  func main() {
  	var t T
  	t.once.Do(t.M)
  	if !called {
  		panic("not called")
  	}
  }
  

View as plain text