Выход за границы слайса в горутине

Что выведетJuniorбесплатно05-t009

Метод обращается к элементу за последним индексом слайса внутри горутины, которую ждёт WaitGroup. Что выведет программа?

main.gogo
1package main2 3import (4	"fmt"5	"sync"6)7 8type recordSet []string9 10func (r recordSet) last() string {11	return r[len(r)]12}13 14func main() {15	records := recordSet{16		"REC-001",17		"REC-002",18		"REC-003",19		"REC-004",20		"REC-005",21	}22	wg := new(sync.WaitGroup)23	wg.Add(1)24	go func() {25		lastRecord := records.last()26		fmt.Printf("Last record is: %s\n", lastRecord)27		wg.Done()28	}()29	wg.Wait()30	fmt.Println("Done.")31}
Чем закончится программа?
Сначала подумай без запуска — на собесе компилятора не будет.