This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: A new alpha bug
- To: Jim Wilson <wilson at cygnus dot com>
- Subject: Re: A new alpha bug
- From: Jason Merrill <jason at cygnus dot com>
- Date: 15 Sep 1997 20:38:36 -0700
- Cc: hjl at lucon dot org (H.J. Lu), egcs at cygnus dot com, g++ at cygnus dot com
- References: <199709160326.UAA22650@cygnus.com>
>>>>> Jim Wilson <wilson@cygnus.com> writes:
> The following patch will fix the problem, but I am not sure if it is the
> right solution.
I think this is better:
Wed Aug 13 17:32:38 1997 Jason Merrill <jason@yorick.cygnus.com>
* expr.c (expand_expr, case TARGET_EXPR): Call mark_addressable
again for the slot after we give it RTL.
Index: expr.c
===================================================================
RCS file: /cvs/cvsfiles/egcs/gcc/expr.c,v
retrieving revision 1.7
diff -c -r1.7 expr.c
*** expr.c 1997/09/16 02:07:20 1.7
--- expr.c 1997/09/16 03:37:26
***************
*** 6919,6924 ****
--- 6919,6929 ----
/* All temp slots at this level must not conflict. */
preserve_temp_slots (target);
DECL_RTL (slot) = target;
+ if (TREE_ADDRESSABLE (slot))
+ {
+ TREE_ADDRESSABLE (slot) = 0;
+ mark_addressable (slot);
+ }
/* Since SLOT is not known to the called function
to belong to its stack frame, we must build an explicit