Swift: conversão do compilador do tipo para o opcional

Parece que o compilador converte automaticamente um tipo em um tipo opcional quando necessário, mesmo que não exista nenhum relacionamento de herança aqui.

Onde na documentação esse comportamento é especificado?

func test(value: String?) {
    // String passed in is now an optional String instead.
    print(value ?? "")
}

// Pass an actual string
test(value: "test")

questionAnswers(1)

yourAnswerToTheQuestion