diff options
author | Tom de Vries <tom@codesourcery.com> | 2011-05-22 19:00:33 +0000 |
---|---|---|
committer | Tom de Vries <vries@gcc.gnu.org> | 2011-05-22 19:00:33 +0000 |
commit | 5fb43dd8356409f824c16666f6a45f3b89c2a8f2 (patch) | |
tree | 2dc54ebad9fe97485f5f0439244c0d73ef65e309 /gcc/fold-const.c | |
parent | ccb1b17ba8e94c59bbf14f8ed24d9e39377b7efb (diff) | |
download | gcc-5fb43dd8356409f824c16666f6a45f3b89c2a8f2.zip gcc-5fb43dd8356409f824c16666f6a45f3b89c2a8f2.tar.gz gcc-5fb43dd8356409f824c16666f6a45f3b89c2a8f2.tar.bz2 |
re PR middle-end/48689 (ICE in fold-const.c:13798 with fold checking)
2011-05-22 Tom de Vries <tom@codesourcery.com>
PR middle-end/48689
* fold-const.c (fold_checksum_tree): Guard TREE_CHAIN use with
CODE_CONTAINS_STRUCT (TS_COMMON).
From-SVN: r174035
Diffstat (limited to 'gcc/fold-const.c')
-rw-r--r-- | gcc/fold-const.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/fold-const.c b/gcc/fold-const.c index ab68eab..d399c53 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -13822,7 +13822,8 @@ recursive_label: if (TREE_CODE_CLASS (code) != tcc_type && TREE_CODE_CLASS (code) != tcc_declaration && code != TREE_LIST - && code != SSA_NAME) + && code != SSA_NAME + && CODE_CONTAINS_STRUCT (code, TS_COMMON)) fold_checksum_tree (TREE_CHAIN (expr), ctx, ht); switch (TREE_CODE_CLASS (code)) { |