aboutsummaryrefslogtreecommitdiff
path: root/gcc/fold-const.c
diff options
context:
space:
mode:
authorAndrew Pinski <andrew_pinski@playstation.sony.com>2007-08-03 23:36:05 +0000
committerAndrew Pinski <pinskia@gcc.gnu.org>2007-08-03 16:36:05 -0700
commitf9fc04494477f63b2739ea14f80bb87f4bfd21ce (patch)
tree60cdfed71aacfeec45cc5524ef7c06e55b808baf /gcc/fold-const.c
parent48dd736cd4f9fe8eddc5ef1ab7711021236eacc4 (diff)
downloadgcc-f9fc04494477f63b2739ea14f80bb87f4bfd21ce.zip
gcc-f9fc04494477f63b2739ea14f80bb87f4bfd21ce.tar.gz
gcc-f9fc04494477f63b2739ea14f80bb87f4bfd21ce.tar.bz2
re PR middle-end/32935 (internal compiler error: in emit_move_insn, at expr.c:3316)
2007-08-03 Andrew Pinski <andrew_pinski@playstation.sony.com> PR middle-end/32935 * fold-convert.c (fold_negate_expr <NOP_EXPR>): Convert back to the correct type the negate expression. 2007-08-03 Andrew Pinski <andrew_pinski@playstation.sony.com> PR middle-end/32935 * gfortran.fortran-torture/compile/complex_1.f90: New test. From-SVN: r127190
Diffstat (limited to 'gcc/fold-const.c')
-rw-r--r--gcc/fold-const.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index 614e55a..be46b23 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -1382,7 +1382,7 @@ fold_negate_expr (tree t)
{
tem = strip_float_extensions (t);
if (tem != t && negate_expr_p (tem))
- return negate_expr (tem);
+ return fold_convert (type, negate_expr (tem));
}
break;