segment fault

R=rsc
OCL=31396
CL=31396
diff --git a/src/cmd/gc/walk.c b/src/cmd/gc/walk.c
index 08be5bf..65313bc 100644
--- a/src/cmd/gc/walk.c
+++ b/src/cmd/gc/walk.c
@@ -790,6 +790,10 @@
 		if(top != Erv)
 			goto nottop;
 		walktype(n->left, Erv);
+		if(n->left == N) {
+			yyerror("missing argument to len");
+			goto ret;
+		}
 		defaultlit(n->left, T);
 		implicitstar(&n->left);
 		t = n->left->type;