你正在使用的Go版本是什么( go version
)?
$ go version
go version go1.16.5 darwin/amd64
这个问题在最新版本中是否重现?
是的。
你正在使用什么操作系统和处理器架构( go env
)?
go env
输出
$ go env
GO111MODULE="on"
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/marco/Library/Caches/go-build"
GOENV="/Users/marco/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/marco/go/pkg/mod"
GOOS="darwin"
GOPATH="/Users/marco/go"
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.16.5"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/dev/null"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/z9/xrln_qks56jbzxjbhs04fpm80000gn/T/go-build771492184=/tmp/go-build -gno-record-gcc-switches -fno-common"
你做了什么?
编译以下程序
package main
func main() {
if a := true: a { }
}
你期望看到什么?
syntax error: unexpected :, expecting ;
如果解析了一个SimpleStmt,并且下一个标记不是分号,我希望在错误消息中提示分号。
你看到了什么?
syntax error: unexpected :, expecting {
2条答案
按热度按时间ttcibm8c1#
感谢您的报告。
这种情况在Go 1.14及之前的版本中是否也发生过,还是这是一个较新的回归?
4uqofj5v2#
这是否也发生在Go的旧版本中,如1.14及之前,还是这是一个较新的回归?
在旧版本中也发生过,例如在1.13版本中。