summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/stmt.c4
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8f7edc9deb2..89ba97a16f4 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Tue Sep 14 09:47:41 1999 Andreas Schwab <schwab@suse.de>
+
+ * stmt.c (expand_end_case): Return right away if the case stack is
+ empty.
+
Tue Sep 14 01:47:19 1999 Jeffrey A Law (law@cygnus.com)
* Makefile.in (version.c): Remove rule incorrectly brought in from
diff --git a/gcc/stmt.c b/gcc/stmt.c
index 107735f359d..22ddac8effe 100644
--- a/gcc/stmt.c
+++ b/gcc/stmt.c
@@ -5188,6 +5188,10 @@ expand_end_case (orig_index)
tree index_expr, index_type;
int unsignedp;
+ /* Don't crash due to previous errors. */
+ if (thiscase == NULL)
+ return;
+
table_label = gen_label_rtx ();
index_expr = thiscase->data.case_stmt.index_expr;
index_type = TREE_TYPE (index_expr);