[Patch, fortran] PR31217 - ICE using FORALL on character substrings

Tobias Burnus burnus@net-b.de
Thu Oct 18 21:21:00 GMT 2007


Paul Richard Thomas wrote:
> Bootstraps and regtests x86_ia64/fc5 - OK for trunk?
>   
I stuggle a bit with

! 	  return ((fin_dep >= GFC_DEP_OVERLAP)
! 		    && (fin_dep != GFC_DEP_ERROR)) ? 1 : 0;


I expected "<=" instead of ">=", after I looking at

typedef enum
{
  GFC_DEP_ERROR,
  GFC_DEP_EQUAL,        /* Identical Ranges.  */
  GFC_DEP_FORWARD,      /* eg. a(1:3), a(2:4).  */
  GFC_DEP_OVERLAP,      /* May overlap in some other way.  */
  GFC_DEP_NODEP         /* Distinct ranges.  */
}

Well, for Dominique's failing test this does not help, however. (There,
fin_dep == GFC_DEP_ERROR).

Thus: If you think it helps to commit this patch before fixing
Dominique's problem, you may do so if you change ">=" into "<=".
Otherwise, I'm awaiting the next patch.

(w/o the patch, Dominique's test gives an ICE, which might be regarded
better than wrong code.)

Tobias



More information about the Fortran mailing list