This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Bogus trees from Ada front-end (more VRP vs Ada) stuff)
- From: Jeffrey A Law <law at redhat dot com>
- To: Richard Kenner <kenner at vlsi1 dot ultra dot nyu dot edu>
- Cc: ebotcazou at adacore dot com, gcc at gcc dot gnu dot org
- Date: Tue, 07 Mar 2006 08:54:42 -0700
- Subject: Re: Bogus trees from Ada front-end (more VRP vs Ada) stuff)
- References: <10603071300.AA13218@vlsi1.ultra.nyu.edu>
- Reply-to: law at redhat dot com
On Tue, 2006-03-07 at 08:00 -0500, Richard Kenner wrote:
> if (INTEGRAL_TYPE_P (etype) && TREE_TYPE (etype))
> {
> etype = TREE_TYPE (etype);
> exp = fold_convert (etype, exp);
> low = fold_convert (etype, low);
> value = fold_convert (etype, value);
> }
>
> I gather that we should restrict the transformation to INTEGER_TYPEs.
>
> We could, but the other possibility is to use an INTEGER_TYPE of the same
> precision and use it in the code above when the input ETYPE is an
> ENUMERAL_TYPE.
Presumably there's a reason why enumeral types don't have a
base type?
I've got no strong opinions on how to fix this, I just wanted
to throw out another possible approach.
jeff