Вы должны распределить дальнейшие измерения индивидуально, например, так:
func matrix(n int) {
var result = make([][]int, n)
for i := range result {
result[i] = make([]int, n)
}
fmt.Println(result)
}
С фактическим массивом с фиксированными измерениями, известными во время компиляции, вы можете сделать что-то вроде:
var result [5][5]int
но это не тот случай, который у вас есть.