This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: gimplify_parameters
- From: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- To: rth at redhat dot com
- Cc: gcc at gcc dot gnu dot org
- Date: Tue, 21 Dec 04 07:55:34 EST
- Subject: Re: gimplify_parameters
The following fixes the ICE on s-fileio.adb. I guess I'll run it through
and see what happens. And then try and fix the C problems you uncovered.
* gimplify.c (eval_save_expr): New.
(gimplify_one_sizepos): Use it.
My gut feeling was right. It didn't get very far into the Ada RTS build,
blowing up compiling g-debpoo.adb with an SSA_NAME in an array bound when
writing debugging information.
You really *can't* call gimplify_type_sizes just because a type used
as a the type of parameter. This stuff is very tricky, but I can
assure you it won't work if you do that. The only solution I see is
somehow to arrange to call it only in the specific case in question,
which is unique to C.
I also don't think it's good enough to only gimplify a SAVE_EXPR.