1
0
mirror of https://github.com/golang/go synced 2024-09-30 04:34:33 -06:00

cmd/compile: associate tracking issue numbers with TODOs

Comment changes only.

Change-Id: Ib365b3cd16af9995cb0a2cce48fbe35d73899438
Reviewed-on: https://go-review.googlesource.com/16898
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Chris Manghane <cmang@golang.org>
This commit is contained in:
Robert Griesemer 2015-11-13 16:28:46 -08:00
parent 59dc25730b
commit 12126752cc
2 changed files with 21 additions and 9 deletions

View File

@ -202,8 +202,8 @@ func Main() {
obj.Flagcount("live", "debug liveness analysis", &debuglive)
obj.Flagcount("m", "print optimization decisions", &Debug['m'])
obj.Flagcount("msan", "build code compatible with C/C++ memory sanitizer", &flag_msan)
obj.Flagcount("newexport", "use new export format", &newexport) // TODO(gri) remove eventually
obj.Flagcount("oldparser", "use old parser", &oldparser) // TODO(gri) remove eventually
obj.Flagcount("newexport", "use new export format", &newexport) // TODO(gri) remove eventually (issue 13241)
obj.Flagcount("oldparser", "use old parser", &oldparser) // TODO(gri) remove eventually (issue 13240)
obj.Flagcount("nolocalimports", "reject local (relative) imports", &nolocalimports)
obj.Flagstr("o", "write output to `file`", &outfile)
obj.Flagstr("p", "set expected package import `path`", &myimportpath)
@ -322,7 +322,7 @@ func Main() {
// to the yacc-based parser. Short-term work-around for issues with
// the new recursive-descent parser for which setting -oldparser is
// not sufficient.
// TODO(gri) remove this eventually
// TODO(gri) remove this eventually (issue 13240)
//
// oldparser = 1

View File

@ -14,7 +14,7 @@ const trace = false // if set, parse tracing can be enabled with -x
// TODO(gri) Once we handle imports w/o redirecting the underlying
// source of the lexer we can get rid of these. They are here for
// compatibility with the existing yacc-based parser setup.
// compatibility with the existing yacc-based parser setup (issue 13242).
var thenewparser parser // the parser in use
var savedstate []parser // saved parser state, used during import
@ -184,6 +184,7 @@ func tokstring(tok int32) string {
}
// TODO(gri) figure out why yyTokname doesn't work for us as expected
// (issue 13243)
var tokstrings = map[int32]string{
LLITERAL: "LLITERAL",
LASOP: "op=",
@ -242,6 +243,7 @@ func (p *parser) print_trace(msg ...interface{}) {
fmt.Printf("%5d: ", lineno)
// TODO(gri) imports screw up p.indent - fix this
// (issue 13243)
if p.indent < 0 {
p.indent = 0
}
@ -407,7 +409,7 @@ func (p *parser) import_here() int {
p.advance(';', ')')
}
line := parserline() // TODO(gri) check correct placement of this
line := parserline() // TODO(gri) check correct placement of this (issue 13243)
importfile(&path, line)
return line
}
@ -879,7 +881,7 @@ func (p *parser) compound_stmt(else_clause bool) *Node {
}
popdcl()
p.want('}') // TODO(gri) is this correct location w/ respect to popdcl()?
p.want('}') // TODO(gri) is this correct location w/ respect to popdcl()? (issue 13243)
return stmt
}
@ -903,7 +905,7 @@ func (p *parser) caseblock(tswitch *Node) *Node {
stmt.Nbody = p.stmt_list()
// TODO(gri) what do we need to do here?
// TODO(gri) what do we need to do here? (issue 13243)
// // This is the only place in the language where a statement
// // list is not allowed to drop the final semicolon, because
// // it's the only place where a statement list is not followed
@ -1201,6 +1203,7 @@ func (p *parser) select_stmt() *Node {
}
// TODO(gri) should have lexer return this info - no need for separate lookup
// (issue 13244)
var prectab = map[int32]struct {
prec int // > 0 (0 indicates not found)
op Op
@ -1293,7 +1296,7 @@ func (p *parser) uexpr() *Node {
op = ONOT
case '~':
// TODO(gri) do this in the lexer instead
// TODO(gri) do this in the lexer instead (issue 13244)
p.next()
x := p.uexpr()
Yyerror("the bitwise complement operator is ^")
@ -1369,6 +1372,9 @@ func (p *parser) operand(keep_parens bool) *Node {
//
// TODO(gri) could simplify this if we parse complits
// in operand (see respective comment in pexpr).
//
// (We can probably not do this because of qualified types
// as in pkg.Type{}) (issue 13243).
if keep_parens || p.tok == '{' {
return Nod(OPAREN, x, nil)
}
@ -1508,6 +1514,7 @@ loop:
case '{':
// TODO(gri) should this (complit acceptance) be in operand?
// accept ()'s around the complit type but complain if we have a complit
// (issue 13243)
t := x
for t.Op == OPAREN {
t = t.Left
@ -1580,6 +1587,7 @@ func (p *parser) bare_complitexpr() *Node {
// x = Nod(OPAREN, x, nil)
// x.Implicit = true
// }
// (issue 13243)
return x
}
@ -1783,6 +1791,7 @@ func (p *parser) ntype() *Node {
case LDDD:
// permit ...T but complain
// TODO(gri) introduced for test/fixedbugs/bug228.go - maybe adjust bug or find better solution
// (issue 13243)
p.syntax_error("")
p.advance()
return p.ntype()
@ -1817,6 +1826,7 @@ func (p *parser) chan_elem() *Node {
// go.y:fnret_type
// TODO(gri) only called from fnres - inline and remove this one
// (issue 13243)
func (p *parser) fnret_type() *Node {
if trace && Debug['x'] != 0 {
defer p.trace("fnret_type")()
@ -2650,7 +2660,7 @@ func (p *parser) arg_list() (l *NodeList, ddd bool) {
}
// TODO(gri) make this more tolerant in the presence of LDDD
// that is not at the end.
// that is not at the end (issue 13243).
for p.tok != EOF && p.tok != ')' && !ddd {
l = list(l, p.expr()) // expr_or_type
@ -3167,6 +3177,8 @@ func (p *parser) hidden_interfacedcl() *Node {
}
// TODO(gri) possible conflict here: both cases may start with '@' per grammar
// (issue 13245).
switch p.tok {
case LNAME, '@', '?':
s1 := p.sym()