summaryrefslogtreecommitdiff
path: root/src/cmd/gc/subr.c
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2009-06-25 16:32:33 -0700
committerRuss Cox <rsc@golang.org>2009-06-25 16:32:33 -0700
commit69a4a5031b0c710664faaac271eca8ac383f17cd (patch)
tree2b3eeb6527a9f7303c730357a9d190a2aee6769b /src/cmd/gc/subr.c
parentaba3b944e7aa3de7f76d449c6cdec249e8b7dae6 (diff)
downloadgolang-69a4a5031b0c710664faaac271eca8ac383f17cd.tar.gz
better error; clean up lineno in a few places
wreck.mtv=; cat x.go package main var x = string.Split() wreck.mtv=; 6g x.go x.go:2: type string used as expression x.go:2: undefined DOT Split on string x.go:3: illegal types for operand: AS undefined wreck.mtv=; BUG=1938751 R=ken OCL=30766 CL=30766
Diffstat (limited to 'src/cmd/gc/subr.c')
-rw-r--r--src/cmd/gc/subr.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/cmd/gc/subr.c b/src/cmd/gc/subr.c
index b2b8e77d6..4f646fbc1 100644
--- a/src/cmd/gc/subr.c
+++ b/src/cmd/gc/subr.c
@@ -106,7 +106,14 @@ setlineno(Node *n)
int32 lno;
lno = lineno;
- if(n != N && n->op != ONAME) {
+ if(n != N)
+ switch(n->op) {
+ case ONAME:
+ case OTYPE:
+ case OPACK:
+ case OLITERAL:
+ break;
+ default:
lineno = n->lineno;
if(lineno == 0) {
if(debug['K'])