1
0
mirror of https://github.com/golang/go synced 2024-11-25 04:07:55 -07:00

gc: syntax error for incomplete chan type

Fixes #932.

R=rsc
CC=golang-dev
https://golang.org/cl/3515041
This commit is contained in:
Ryan Hitchman 2010-12-09 13:41:24 -05:00 committed by Russ Cox
parent e1d6b3c98d
commit f980577064
2 changed files with 26 additions and 0 deletions

View File

@ -35,6 +35,15 @@ static struct {
% loadsys package imports LTYPE LNAME ';' % loadsys package imports LTYPE LNAME ';'
"unexpected semicolon or newline in type declaration", "unexpected semicolon or newline in type declaration",
% loadsys package imports LCHAN '}'
"unexpected } in channel type",
% loadsys package imports LCHAN ')'
"unexpected ) in channel type",
% loadsys package imports LCHAN ','
"unexpected comma in channel type",
% loadsys package imports LFUNC LNAME '(' ')' '{' if_stmt ';' LELSE % loadsys package imports LFUNC LNAME '(' ')' '{' if_stmt ';' LELSE
"unexpected semicolon or newline before else", "unexpected semicolon or newline before else",

17
test/syntax/chan.go Normal file
View File

@ -0,0 +1,17 @@
// errchk $G -e $D/$F.go
// Copyright 2010 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
package main
type xyz struct {
ch chan
} // ERROR "unexpected } in channel type"
func Foo(y chan) { // ERROR "unexpected \) in channel type"
}
func Bar(x chan, y int) { // ERROR "unexpected comma in channel type"
}