This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [patch,fortran] Revamp type enumerators


On Sunday 17 October 2010 16:03:14 Jerry DeLisle wrote:
> >> -{
> >> -  GFC_DTYPE_UNKNOWN = 0,
> >> -  GFC_DTYPE_INTEGER,
> >> -  /* TODO: recognize logical types.  */
> >> -  GFC_DTYPE_LOGICAL,
> >> -  GFC_DTYPE_REAL,
> >> -  GFC_DTYPE_COMPLEX,
> >> -  GFC_DTYPE_DERIVED,
> >> -  GFC_DTYPE_CHARACTER
> >> +{ BT_UNKNOWN = 0, BT_INTEGER, BT_LOGICAL, BT_CHARACTER, BT_REAL,
> >> BT_COMPLEX,
> >> +  BT_DERIVED, BT_CLASS, BT_PROCEDURE, BT_HOLLERITH, BT_VOID
> >> 
> >>   }
> >> -dtype;
> >> -
> >> +bt;
> > 
> > Isn't changing the values of the enums an ABI change?
> 
> I was trying to avoid that, but probably got carried away. How about I
> commit the change to the fortran-exp branch so that it gets merged into
> 4.7 when we plan to break ABI anyway?

Wouldn't it be sufficient to re-order the BT_* to match the GFC_DTYPE_*?
Only BT_CHARACTER is out of order, BT_CLASS and on only add more identfiers. 
So, shouldn't this definition work, as in not breaking anything?

+  { BT_UNKNOWN = 0, BT_INTEGER, BT_LOGICAL, BT_REAL, BT_COMPLEX,
+    BT_DERIVED, BT_CHARACTER, BT_CLASS, BT_PROCEDURE, BT_HOLLERITH, BT_VOID }

Cheers

	Daniel


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]