On 6/24/07, Eric Botcazou <ebotcazou@libertysurf.fr> wrote:
> > /* Return true if the conversion from INNER_TYPE to OUTER_TYPE is
> > ! explicitly, otherwise return false.
> > ! This function implicitly defines the middle-end type system. The
> > ! following invariants shall be fulfilled:
> > !
> > ! 1) type_conversion_needed_p is transitive.
> > ! If a < b and b < c then a < c.
>
> I don't think this is true, take a = c = int and b = char. Which would
> suggest that the reverse form useless_type_conversion is probably easier
> to deal with, conceptually.
I don't understand. For a = c = int and b = char neither a < b nor b < c.