From 6a46d5ea6c548f3049861d27fcfa679e28392a82 Mon Sep 17 00:00:00 2001 From: Robert Griesemer Date: Tue, 26 Jan 2010 11:49:49 -0800 Subject: Allow func() func(). Update gofmt test script. R=rsc CC=golang-dev http://codereview.appspot.com/195044 --- src/pkg/go/parser/parser.go | 2 +- src/pkg/go/parser/parser_test.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'src/pkg/go') 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", } -- cgit v1.2.3