honnef.co/go/tools@v0.5.0-0.dev.0.20240520180541-dcae280a5e87/simple/s1019/testdata/src/example.com/CheckMakeLenCap/CheckMakeLenCap_generics.go (about)

     1  //go:build go1.18
     2  
     3  package pkg
     4  
     5  func fn1() {
     6  	_ = make(chan int, 0) //@ diag(`should use make(chan int) instead`)
     7  }
     8  
     9  func fn2[T chan int]() {
    10  	_ = make(T, 0) //@ diag(`should use make(T) instead`)
    11  }
    12  
    13  func fn3[T chan T]() {
    14  	_ = make(T, 0) //@ diag(`should use make(T) instead`)
    15  }
    16  
    17  func fn4[T any, C chan T]() {
    18  	_ = make(chan T, 0) //@ diag(`should use make(chan T) instead`)
    19  	_ = make(C, 0)      //@ diag(`should use make(C) instead`)
    20  }
    21  
    22  func fn5[T []int]() {
    23  	_ = make(T, 0) // don't flag this, T isn't a channel
    24  }
    25  
    26  type I interface {
    27  	chan int
    28  }
    29  
    30  func fn6[T I]() {
    31  	_ = make(T, 0) //@ diag(`should use make(T) instead`)
    32  }