diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f523f3ac578..de5e5509d73 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2007-05-07 Jan Hubicka + + * gimplify.c (gimplify_expr): Do not crash when folding + (void *)(int)&a + 4. + 2007-05-07 Francois-Xavier Coudert PR driver/31694 diff --git a/gcc/gimplify.c b/gcc/gimplify.c index 3efb2b868c8..a6978d95296 100644 --- a/gcc/gimplify.c +++ b/gcc/gimplify.c @@ -5887,6 +5887,8 @@ gimplify_expr (tree *expr_p, tree *pre_p, tree *post_p, if (POINTER_TYPE_P (TREE_TYPE (*expr_p)) && TREE_CODE (TREE_OPERAND (*expr_p, 0)) == NOP_EXPR && TREE_CODE (TREE_OPERAND (*expr_p, 1)) == INTEGER_CST + && POINTER_TYPE_P (TREE_TYPE (TREE_OPERAND (TREE_OPERAND (*expr_p, + 0),0))) && (tmp = maybe_fold_offset_to_reference (TREE_OPERAND (TREE_OPERAND (*expr_p, 0), 0), TREE_OPERAND (*expr_p, 1),