honnef.co/go/tools@v0.4.7/staticcheck/testdata/src/example.com/checkStdlibUsageNilContext/checkStdlibUsageNilContext_generics.go.golden (about)

     1  -- use context.Background --
     2  //go:build go1.18
     3  
     4  package pkg
     5  
     6  import "context"
     7  
     8  func tpfn1[T any](ctx context.Context, x T)             {}
     9  func tpfn2[T1, T2 any](ctx context.Context, x T1, y T2) {}
    10  
    11  func tpbar() {
    12  	tpfn1[int](context.Background(), 0) //@ diag(`do not pass a nil Context`)
    13  	tpfn1(context.Background(), 0)      //@ diag(`do not pass a nil Context`)
    14  
    15  	tpfn2[int, int](context.Background(), 0, 0) //@ diag(`do not pass a nil Context`)
    16  	tpfn2(context.Background(), 0, 0)           //@ diag(`do not pass a nil Context`)
    17  }
    18  -- use context.TODO --
    19  //go:build go1.18
    20  
    21  package pkg
    22  
    23  import "context"
    24  
    25  func tpfn1[T any](ctx context.Context, x T)             {}
    26  func tpfn2[T1, T2 any](ctx context.Context, x T1, y T2) {}
    27  
    28  func tpbar() {
    29  	tpfn1[int](context.TODO(), 0) //@ diag(`do not pass a nil Context`)
    30  	tpfn1(context.TODO(), 0)      //@ diag(`do not pass a nil Context`)
    31  
    32  	tpfn2[int, int](context.TODO(), 0, 0) //@ diag(`do not pass a nil Context`)
    33  	tpfn2(context.TODO(), 0, 0)           //@ diag(`do not pass a nil Context`)
    34  }