diff options
author | Christian Bruel <chrbr@gcc.gnu.org> | 2012-04-19 11:06:53 +0200 |
---|---|---|
committer | Christian Bruel <chrbr@gcc.gnu.org> | 2012-04-19 11:06:53 +0200 |
commit | 007a787db4538b34e254963ee27d43ea48cbb8c6 (patch) | |
tree | a89d5ad3ac4390a00e23584ee2bc15d40c7f3d1a /gcc/convert.c | |
parent | daa573866d655917328caec7debf2175e2a566f8 (diff) | |
download | gcc-007a787db4538b34e254963ee27d43ea48cbb8c6.zip gcc-007a787db4538b34e254963ee27d43ea48cbb8c6.tar.gz gcc-007a787db4538b34e254963ee27d43ea48cbb8c6.tar.bz2 |
Fix #52283 error: case label does not reduce to an integer constant
From-SVN: r186586
Diffstat (limited to 'gcc/convert.c')
-rw-r--r-- | gcc/convert.c | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/gcc/convert.c b/gcc/convert.c index 8ff2e9a..5e6b09e 100644 --- a/gcc/convert.c +++ b/gcc/convert.c @@ -537,7 +537,6 @@ convert_to_integer (tree type, tree expr) else if (outprec >= inprec) { enum tree_code code; - tree tem; /* If the precision of the EXPR's type is K bits and the destination mode has more bits, and the sign is changing, @@ -555,13 +554,7 @@ convert_to_integer (tree type, tree expr) else code = NOP_EXPR; - tem = fold_unary (code, type, expr); - if (tem) - return tem; - - tem = build1 (code, type, expr); - TREE_NO_WARNING (tem) = 1; - return tem; + return fold_build1 (code, type, expr); } /* If TYPE is an enumeral type or a type with a precision less |