Uma type approximation corresponde não apenas ao próprio tipo, como seria de esperar, mas também a qualquer tipo derivado.
Cada tipo T tem um tipo subjacente: se T for um dos tipos booleanos, numéricos ou de string pré-declarados, ou um tipo literal, o tipo subjacente correspondente será o próprio T.
Caso contrário, o tipo subjacente de T é o tipo subjacente do tipo ao qual T se refere em sua declaração de tipo.
type InteiroPersonalizado int
// O tipo subjacente ao tipo acima é o int
type Pessoa struct{}
// Já no caso acima, o tipo subjacente é o struct