github.com/traefik/yaegi@v0.15.1/_test/issue-1488.go (about) 1 package main 2 3 import "fmt" 4 5 type vector interface { 6 []int | [3]int 7 } 8 9 func sum[V vector](v V) (out int) { 10 for i := 0; i < len(v); i++ { 11 out += v[i] 12 } 13 return 14 } 15 16 func main() { 17 va := [3]int{1, 2, 3} 18 vs := []int{1, 2, 3} 19 fmt.Println(sum[[3]int](va), sum[[]int](vs)) 20 } 21 22 // Output: 23 // 6 6