honnef.co/go/tools@v0.5.0-0.dev.0.20240520180541-dcae280a5e87/unused/testdata/src/example.com/issue1289/issue1289.go (about) 1 package pkg 2 3 func Fn1() { //@ used("Fn1", true) 4 type Foo[T any] struct { //@ used("Foo", true), used("T", true) 5 Id int `json:"id"` //@ used("Id", true) 6 Data T `json:"data"` //@ used("Data", true) 7 } 8 type Bar struct { //@ used("Bar", true) 9 X int `json:"x"` //@ used("X", true) 10 Y int `json:"y"` //@ used("Y", true) 11 } 12 v := Foo[[]Bar]{} //@ used("v", true) 13 _ = v 14 } 15 16 func Fn2() { //@ used("Fn2", true) 17 type Foo[T any] struct{} //@ used("Foo", true), used("T", true) 18 type Bar struct{} //@ used("Bar", true) 19 v := Foo[[]Bar]{} //@ used("v", true) 20 _ = v // just use it, but could be some json.Unmarshal, for instance 21 }