From 9efd6b8a3d4d9b8336abf37d63487aded193b8b2 Mon Sep 17 00:00:00 2001 From: Ken Thompson Date: Thu, 2 Apr 2009 18:06:43 -0700 Subject: [PATCH] compiler falut for forgetting the assignment on a type switch R=r OCL=27048 CL=27048 --- src/cmd/gc/swt.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/cmd/gc/swt.c b/src/cmd/gc/swt.c index 70d1a9e477..263496701f 100644 --- a/src/cmd/gc/swt.c +++ b/src/cmd/gc/swt.c @@ -763,6 +763,13 @@ typeswitch(Node *sw) Case *c, *c0, *c1; int ncase; + if(sw->ntest == nil) + return; + if(sw->ntest->right == nil) { + setlineno(sw); + yyerror("type switch must have an assignment"); + return; + } walktype(sw->ntest->right, Erv); if(!istype(sw->ntest->right->type, TINTER)) { yyerror("type switch must be on an interface"); -- 2.48.1