...
Run Format

Source file test/fixedbugs/issue16016.go

Documentation: test/fixedbugs

  // run
  
  // 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.
  
  package main
  
  import "time"
  
  type T struct{}
  
  func (*T) Foo(vals []interface{}) {
  	switch v := vals[0].(type) {
  	case string:
  		_ = v
  	}
  }
  
  type R struct{ *T }
  
  type Q interface {
  	Foo([]interface{})
  }
  
  func main() {
  	var q Q = &R{&T{}}
  	for i := 0; i < 10000; i++ {
  		go func() {
  			defer q.Foo([]interface{}{"meow"})
  			time.Sleep(100 * time.Millisecond)
  		}()
  	}
  	time.Sleep(1 * time.Second)
  }
  

View as plain text