diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1996-04-14 18:52:47 -0400 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1996-04-14 18:52:47 -0400 |
commit | 3c46fbf6bf370e7644e63d09e12b84ba56433b82 (patch) | |
tree | 4256d8a755b432fb184e472be77f77e7d415abc5 | |
parent | 700ad580a6b6b3c53d74a03a75ad6b3ce82b0a41 (diff) | |
download | gcc-3c46fbf6bf370e7644e63d09e12b84ba56433b82.zip gcc-3c46fbf6bf370e7644e63d09e12b84ba56433b82.tar.gz gcc-3c46fbf6bf370e7644e63d09e12b84ba56433b82.tar.bz2 |
(expand_end_case): Move conversion of case_list before
check_for_full_enumeration_handling.
From-SVN: r11769
-rw-r--r-- | gcc/stmt.c | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -4871,6 +4871,10 @@ expand_end_case (orig_index) /* An ERROR_MARK occurs for various reasons including invalid data type. */ if (index_type != error_mark_node) { + if (thiscase->data.case_stmt.case_list) + thiscase->data.case_stmt.case_list + = case_tree2list (thiscase->data.case_stmt.case_list, 0); + /* If switch expression was an enumerated type, check that all enumeration literals are covered by the cases. No sense trying this if there's a default case, however. */ @@ -4908,10 +4912,6 @@ expand_end_case (orig_index) before_case = get_last_insn (); - if (thiscase->data.case_stmt.case_list) - thiscase->data.case_stmt.case_list - = case_tree2list(thiscase->data.case_stmt.case_list, 0); - /* Simplify the case-list before we count it. */ group_case_nodes (thiscase->data.case_stmt.case_list); |