From 7c95f1c46135554f462e3e62a92adcc3c544555d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?=
 <grubba@grubba.org>
Date: Tue, 4 Jan 2000 02:32:04 +0100
Subject: [PATCH] Fixed typo.

Rev: src/docode.c:1.64
---
 src/docode.c | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/src/docode.c b/src/docode.c
index 6011dec455..041f63197f 100644
--- a/src/docode.c
+++ b/src/docode.c
@@ -5,7 +5,7 @@
 \*/
 /**/
 #include "global.h"
-RCSID("$Id: docode.c,v 1.63 2000/01/04 01:29:11 grubba Exp $");
+RCSID("$Id: docode.c,v 1.64 2000/01/04 01:32:04 grubba Exp $");
 #include "las.h"
 #include "program.h"
 #include "language.h"
@@ -873,18 +873,20 @@ static int do_docode2(node *n,int flags)
     f_aggregate(cases);
     order=get_switch_order(sp[-1].u.array);
 
-    /* Check for cases inside a range */
-    for(e=0; e<cases-1; e++)
-    {
-      if(order[e] < cases-1)
+    if (!num_parse_error) {
+      /* Check for cases inside a range */
+      for(e=0; e<cases-1; e++)
       {
-	int o1=order[e]*2+2;
-	if(current_switch_jumptable[o1]==current_switch_jumptable[o1+1] &&
-	   current_switch_jumptable[o1]==current_switch_jumptable[o1+2])
+	if(order[e] < cases-1)
 	{
-	  if(order[e]+1 != order[e+1])
-	    yyerror("Case inside range.");
-          e++;
+	  int o1=order[e]*2+2;
+	  if(current_switch_jumptable[o1]==current_switch_jumptable[o1+1] &&
+	     current_switch_jumptable[o1]==current_switch_jumptable[o1+2])
+	  {
+	    if(order[e]+1 != order[e+1])
+	      yyerror("Case inside range.");
+	    e++;
+	  }
 	}
       }
     }
-- 
GitLab