Tom Lane wrote:
> Christof Petig <christof@petig-baender.de> writes:
> > IIRC the list of descriptor types is terminated by ECPGd_EODT. So the new
> > library can't figure out where the old code's argument stop.
> > Fix: put ECPGd_cardinality behind ECPGd_EODT.
> > I reordered them because of logical considerations, maybe we should weight
> > binary compatibility more than beautiful-sortedness of enum values.
>
> Is that a safe fix? If there are any places that assume that ECPGd_EODT
> is the largest value of this enum type (eg, for sizing arrays) then
> I think you've got a problem.
I double checked again. No problems at all.
Christof
PS: Michael, did you know that ecpg does not support casts on variable
inialization ?
int VAR=(int)2.2;
is illegal in an declare section!
But it is hard to fix (tried five times, 51 shift/reduce conflicts, gave up).
Used the C++ way ( int VAR=int(2.2); )