Sliced by Go's Slices

Today, I was sliced by Go&rsquo;s slices. Actually, by Go&rsquo;s variadics. Question: what does this snippet print? func main () { nums := [] int { 1 , 2 , 3 } PrintSquares ( nums ... ) // variadic expansion fmt . Printf ( '2 %v\n' , nums ) } func PrintSquares ( nums ... int ) { for i , n := range nums { nums [ i ] = n * n } fmt . Printf ( '1 %v\n' , nums ) } Answer ( Playground ): 1 [1 4 9] 2 [1…