diff options
author | Nathan Froyd <froydnj@codesourcery.com> | 2011-05-13 13:44:04 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2011-05-13 06:44:04 -0700 |
commit | eb9f925985506bf4c98f928bfdc141e2ea3e73a6 (patch) | |
tree | e093ea692109ef0e29d21b89b833062d4b892c4d /gcc/tree-cfg.c | |
parent | 3c6cbf7ad1abf48e18c7130feb6e4f60fad938f7 (diff) | |
download | gcc-eb9f925985506bf4c98f928bfdc141e2ea3e73a6.zip gcc-eb9f925985506bf4c98f928bfdc141e2ea3e73a6.tar.gz gcc-eb9f925985506bf4c98f928bfdc141e2ea3e73a6.tar.bz2 |
Change edge_to_cases_cleanup to return true.
2011-05-13 Nathan Froyd <froydnj@codesourcery.com>
PR middle-end/48965
* tree-cfg.c (edge_to_cases_cleanup): Return true.
(verify_expr) [CASE_LABEL_EXPR]: Add checking.
From-SVN: r173733
Diffstat (limited to 'gcc/tree-cfg.c')
-rw-r--r-- | gcc/tree-cfg.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index c5fa416..9e74f58 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -843,7 +843,7 @@ edge_to_cases_cleanup (const void *key ATTRIBUTE_UNUSED, void **value, } *value = NULL; - return false; + return true; } /* Start recording information mapping edges to case labels. */ @@ -2830,6 +2830,14 @@ verify_expr (tree *tp, int *walk_subtrees, void *data ATTRIBUTE_UNUSED) *walk_subtrees = 0; break; + case CASE_LABEL_EXPR: + if (CASE_CHAIN (t)) + { + error ("invalid CASE_CHAIN"); + return t; + } + break; + default: break; } |