Hi Eric, Eric Blake wrote: > On x86 architecture: > $ echo 'eval((1<<31)/-1)'|m4 > Floating point exception (core dumped) > > Fixed as shown below.
Nice catch! Who would have thought we were carrying so many little bugs
after 12 years or more in service? :-)
> Meanwhile, should 1.4.5 change the eval operator precedence to match C, or
> leave it alone?
Since HEAD already makes decisions at runtime based on -G and $POSIXLY_CORRECT,
we can support C precedence by default, and revert to traditional precedence
in traditional mode unless POSIXLY_CORRECT is also set.
I think 1.4.5 should probably leave it alone, as this is what 1.4.x users are
probably used to... unless we start looking at POSIXLY_CORRECT in branch-1_4
too...
> As an example of where GNU and traditional Solaris go
> wrong, but Solaris xpg4 matches POSIX:
> $ echo 'eval(!0*2)'|m4
> 1
> $ echo 'eval(!0*2)'|/usr/ccs/bin/m4
> 1
> $ echo 'eval(!0*2)'|/usr/xpg4/bin/m4
> 2
Cheers,
Gary.
--
Gary V. Vaughan ())_. [EMAIL PROTECTED],gnu.org}
Research Scientist ( '/ http://blog.azazil.net
GNU Hacker / )= http://trac.azazil.net/projects/libtool
Technical Author `(_~)_ http://sources.redhat.com/autobook
signature.asc
Description: OpenPGP digital signature
_______________________________________________ M4-patches mailing list [email protected] http://lists.gnu.org/mailman/listinfo/m4-patches
