cue/ast: split off Ellipsis from ListLit

- allows reuse of Ellipsis for StructLit
  (needed for closed lits)
- allows relaxing positioning of ellipsis in
   the future (may be useful for structs and
   associative lists)
- simplifies code in general

Change-Id: I18caac6677b6178a9fe4c3db609046ff76eb7b10
Reviewed-on: https://cue-review.googlesource.com/c/cue/+/2863
Reviewed-by: Marcel van Lohuizen <mpvl@golang.org>
diff --git a/encoding/protobuf/parse.go b/encoding/protobuf/parse.go
index 9647df4..4df5977 100644
--- a/encoding/protobuf/parse.go
+++ b/encoding/protobuf/parse.go
@@ -509,9 +509,8 @@
 
 		if x.Repeated {
 			f.Value = &ast.ListLit{
-				Lbrack:   p.toCUEPos(x.Position),
-				Ellipsis: token.NoSpace.Pos(),
-				Type:     f.Value,
+				Lbrack: p.toCUEPos(x.Position),
+				Elts:   []ast.Expr{&ast.Ellipsis{Type: f.Value}},
 			}
 		}