1package append
2
3func foo([]string)  {}
4func bar(...string) {}
5
6func _() {
7	var (
8		aInt     []int    //@item(appendInt, "aInt", "[]int", "var")
9		aStrings []string //@item(appendStrings, "aStrings", "[]string", "var")
10		aString  string   //@item(appendString, "aString", "string", "var")
11	)
12
13	foo(append())           //@rank("))", appendStrings, appendInt),rank("))", appendStrings, appendString)
14	foo(append(nil, a))     //@rank("))", appendStrings, appendInt),rank("))", appendString, appendInt),snippet("))", appendStrings, "aStrings...", "aStrings...")
15	foo(append(nil, "", a)) //@rank("))", appendString, appendInt),rank("))", appendString, appendStrings)
16
17	// Don't add "..." to append() argument.
18	bar(append()) //@snippet("))", appendStrings, "aStrings", "aStrings")
19}
20