Commit 85e3c9e6 authored by Russ Cox's avatar Russ Cox Committed by David Chase

cmd/compile, go/types: omit needless word in error message

CL 21462 and CL 21463 made this message say explicitly that the problem
was a struct field in a map, but the word "directly" is unnecessary,
sounds wrong, and makes the error long.

Change-Id: I2fb68cdaeb8bd94776b8022cf3eae751919ccf6f
Reviewed-on: https://go-review.googlesource.com/23373
Run-TryBot: Russ Cox <rsc@golang.org>
Reviewed-by: 's avatarDavid Chase <drchase@google.com>
parent 34b17d4d
......@@ -3153,7 +3153,7 @@ func checkassign(stmt *Node, n *Node) {
}
if n.Op == ODOT && n.Left.Op == OINDEXMAP {
Yyerror("cannot directly assign to struct field %v in map", n)
Yyerror("cannot assign to struct field %v in map", n)
return
}
......
......@@ -183,7 +183,7 @@ func (check *Checker) assignVar(lhs ast.Expr, x *operand) Type {
var op operand
check.expr(&op, sel.X)
if op.mode == mapindex {
check.errorf(z.pos(), "cannot directly assign to struct field %s in map", ExprString(z.expr))
check.errorf(z.pos(), "cannot assign to struct field %s in map", ExprString(z.expr))
return nil
}
}
......
......@@ -137,7 +137,7 @@ func issue6487() {
type M map[string]S
var m M
m /* ERROR "cannot directly assign to struct field" */ ["foo"].x = 0
m /* ERROR "cannot assign to struct field" */ ["foo"].x = 0
_ = &( /* ERROR "cannot take address" */ m["foo"].x)
_ = &m /* ERROR "cannot take address" */ ["foo"].x
}
......
......@@ -11,5 +11,5 @@ package main
func main() {
type person struct{ age, weight, height int }
students := map[string]person{"sally": person{12, 50, 32}}
students["sally"].age = 3 // ERROR "cannot directly assign to struct field .* in map"
students["sally"].age = 3 // ERROR "cannot assign to struct field .* in map"
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment