nil-указатель в пустом интерфейсе

Что выведетMiddleбесплатно04-t001

Указатель на строку, равный nil, присваивают переменной типа interface{}. Что выведут три сравнения с nil — для самого указателя, для интерфейса до присваивания и для него же после?

main.gogo
1package main2 3import "fmt"4 5func main() {6	var ptr *string7	fmt.Println(ptr == nil)8	var box interface{}9	fmt.Println(box == nil)10	box = ptr11	fmt.Println(box == nil)12}
Чем закончится программа?
Сначала подумай без запуска — на собесе компилятора не будет.