re PR middle-end/24901 (Misaligned data in fold_checksum_tree (--enable-checking=all))
PR middle-end/24901 * fold-const.c (fold_checksum_tree): Change type of buf. From-SVN: r110487
This commit is contained in:
parent
65b4c3370f
commit
3f7f53c7b3
2 changed files with 10 additions and 5 deletions
|
@ -1,3 +1,8 @@
|
|||
2006-02-01 Steve Ellcey <sje@cup.hp.com>
|
||||
|
||||
PR middle-end/24901
|
||||
* fold-const.c (fold_checksum_tree): Change type of buf.
|
||||
|
||||
2006-02-01 Bernd Schmidt <bernd.schmidt@analog.com>
|
||||
|
||||
* reload.c (push_secondary_reload): Initialize t_icode.
|
||||
|
|
|
@ -10476,7 +10476,7 @@ fold_checksum_tree (tree expr, struct md5_ctx *ctx, htab_t ht)
|
|||
{
|
||||
void **slot;
|
||||
enum tree_code code;
|
||||
char buf[sizeof (struct tree_function_decl)];
|
||||
struct tree_function_decl buf;
|
||||
int i, len;
|
||||
|
||||
recursive_label:
|
||||
|
@ -10495,8 +10495,8 @@ recursive_label:
|
|||
&& DECL_ASSEMBLER_NAME_SET_P (expr))
|
||||
{
|
||||
/* Allow DECL_ASSEMBLER_NAME to be modified. */
|
||||
memcpy (buf, expr, tree_size (expr));
|
||||
expr = (tree) buf;
|
||||
memcpy ((char *) &buf, expr, tree_size (expr));
|
||||
expr = (tree) &buf;
|
||||
SET_DECL_ASSEMBLER_NAME (expr, NULL);
|
||||
}
|
||||
else if (TREE_CODE_CLASS (code) == tcc_type
|
||||
|
@ -10505,8 +10505,8 @@ recursive_label:
|
|||
|| TYPE_CONTAINS_PLACEHOLDER_INTERNAL (expr)))
|
||||
{
|
||||
/* Allow these fields to be modified. */
|
||||
memcpy (buf, expr, tree_size (expr));
|
||||
expr = (tree) buf;
|
||||
memcpy ((char *) &buf, expr, tree_size (expr));
|
||||
expr = (tree) &buf;
|
||||
TYPE_CONTAINS_PLACEHOLDER_INTERNAL (expr) = 0;
|
||||
TYPE_POINTER_TO (expr) = NULL;
|
||||
TYPE_REFERENCE_TO (expr) = NULL;
|
||||
|
|
Loading…
Add table
Reference in a new issue