[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: branch-1_4 coredump on x86 eval
From: |
Gary V. Vaughan |
Subject: |
Re: branch-1_4 coredump on x86 eval |
Date: |
Tue, 27 Jun 2006 16:02:21 +0100 |
User-agent: |
Thunderbird 1.5.0.2 (X11/20060519) |
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 ())_. address@hidden,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