F below is valid non-generic code, so I'd expect G to compile successfully too. However, go/types and types2 currently reject it. ``` package p func F() { type T = *struct{ f int } _ = []T{{f: 1}} } func G[T ~*struct{ f int }]() { _ = []T{{f: 1}} } ``` /cc @griesemer @findleyr @ianlancetaylor