summaryrefslogtreecommitdiff
path: root/src/pkg/go
diff options
context:
space:
mode:
authorRobert Griesemer <gri@golang.org>2010-01-26 11:49:49 -0800
committerRobert Griesemer <gri@golang.org>2010-01-26 11:49:49 -0800
commit6a46d5ea6c548f3049861d27fcfa679e28392a82 (patch)
treed161715430ae715359beb69d230cfe594f746cac /src/pkg/go
parentadf21f0484ab001cb2471da716bcc03a97f2b526 (diff)
downloadgolang-6a46d5ea6c548f3049861d27fcfa679e28392a82.tar.gz
Allow func() func().
Update gofmt test script. R=rsc CC=golang-dev http://codereview.appspot.com/195044
Diffstat (limited to 'src/pkg/go')
-rw-r--r--src/pkg/go/parser/parser.go2
-rw-r--r--src/pkg/go/parser/parser_test.go2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/pkg/go/parser/parser.go b/src/pkg/go/parser/parser.go
index 45713327d..99c237074 100644
--- a/src/pkg/go/parser/parser.go
+++ b/src/pkg/go/parser/parser.go
@@ -677,7 +677,7 @@ func (p *parser) parseResult(scope *ast.Scope) []*ast.Field {
var results []*ast.Field
if p.tok == token.LPAREN {
results = p.parseParameters(scope, false)
- } else if p.tok != token.FUNC {
+ } else {
typ := p.tryType()
if typ != nil {
results = make([]*ast.Field, 1)
diff --git a/src/pkg/go/parser/parser_test.go b/src/pkg/go/parser/parser_test.go
index c177b2eb8..39e13c5a5 100644
--- a/src/pkg/go/parser/parser_test.go
+++ b/src/pkg/go/parser/parser_test.go
@@ -34,7 +34,7 @@ var validPrograms = []interface{}{
`package main; func main() { if f(T{}) {} }` + "\n",
`package main; func main() { _ = (<-chan int)(x) }` + "\n",
`package main; func main() { _ = (<-chan <-chan int)(x) }` + "\n",
- `package main; func f(func() (func() int))` + "\n",
+ `package main; func f(func() func() func())` + "\n",
}