Skip to content

Commit

Permalink
[dev.typeparams] go/*: add TODOs from CLs importing dev.go2go changes
Browse files Browse the repository at this point in the history
With the plurality of CLs importing dev.go2go changes it's getting hard
to track all of the code review comments that were deferred for later
consideration. Add some TODOs to capture these comments in the source,
so that they may be more easily located.

Change-Id: I5caf085fec11ca8992b7affe6feb0a7aa202f21f
Reviewed-on: https://go-review.googlesource.com/c/go/+/276254
Trust: Robert Findley <rfindley@google.com>
Run-TryBot: Robert Findley <rfindley@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Robert Griesemer <gri@golang.org>
  • Loading branch information
findleyr committed Dec 8, 2020
1 parent b6e6785 commit 6015c4e
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 2 deletions.
6 changes: 5 additions & 1 deletion src/go/ast/ast.go
Expand Up @@ -372,7 +372,9 @@ type (
Args []Expr // function arguments; or nil
Ellipsis token.Pos // position of "..." (token.NoPos if there is no "...")
Rparen token.Pos // position of ")"
Brackets bool // if set, "[" and "]" are used instead of "(" and ")"
// TODO(rFindley) use a new ListExpr type rather than overloading CallExpr
// via Brackets, as is done in the syntax package
Brackets bool // if set, "[" and "]" are used instead of "(" and ")"
}

// A StarExpr node represents an expression of the form "*" Expression.
Expand Down Expand Up @@ -987,6 +989,8 @@ type (
Name *Ident // function/method name
Type *FuncType // function signature: type and value parameters, results, and position of "func" keyword
Body *BlockStmt // function body; or nil for external (non-Go) function
// TODO(rFindley) consider storing TParams here, rather than FuncType, as
// they are only valid for declared functions
}
)

Expand Down
3 changes: 2 additions & 1 deletion src/go/parser/parser.go
Expand Up @@ -798,7 +798,7 @@ func (p *parser) parseFieldDecl(scope *ast.Scope) *ast.Field {
} else {
// embedded, possibly generic type
// (using the enclosing parentheses to distinguish it from a named field declaration)
// TODO(gri) confirm that this doesn't allow parenthesized embedded type
// TODO(rFindley) confirm that this doesn't allow parenthesized embedded type
typ = p.parseType()
}

Expand Down Expand Up @@ -870,6 +870,7 @@ type field struct {
}

func (p *parser) parseParamDecl(name *ast.Ident) (f field) {
// TODO(rFindley) compare with parser.paramDeclOrNil in the syntax package
if p.trace {
defer un(trace(p, "ParamDeclOrNil"))
}
Expand Down
1 change: 1 addition & 0 deletions src/go/types/typestring.go
Expand Up @@ -313,6 +313,7 @@ func writeTypeList(buf *bytes.Buffer, list []Type, qf Qualifier, visited []Type)
}

func writeTParamList(buf *bytes.Buffer, list []*TypeName, qf Qualifier, visited []Type) {
// TODO(rFindley) compare this with the corresponding implementation in types2
buf.WriteString("[")
var prev Type
for i, p := range list {
Expand Down

0 comments on commit 6015c4e

Please sign in to comment.