exec garble build ! binsubstr main$exe ${WORK} 'garble_main.go' 'GenericFunc' 'GenericVector' 'PredeclaredSignedInteger' 'StringableSignedInteger' 'CombineEmbeds' 'GenericParam' -- go.mod -- module test/main go 1.22 -- garble_main.go -- package main func main() { GenericFunc[int, int](1, 2) var _ GenericVector[int] g1 := GenericGraph[string]{Content: "Foo"} g1.Edges = make([]GenericGraph[string], 1) g2 := GenericGraph[*[]byte]{Content: new([]byte)} g2.Edges = make([]GenericGraph[*[]byte], 1) } func GenericFunc[GenericParamA, B any](x GenericParamA, y B) {} type GenericVector[GenericParamT any] []GenericParamT type GenericGraph[T any] struct { Content T Edges []GenericGraph[T] } type PredeclaredSignedInteger interface { int | int8 | int16 | int32 | int64 } type StringableSignedInteger interface { ~int | ~int8 | ~int16 | ~int32 | ~int64 String() string } type CombineEmbeds interface { string | int interface { EmbeddedMethod() } RegularMethod() } type Slice[T any] []T func sliceOfPointer() Slice[*any] { return []*any{} }