On 22 Mar 2015, at 22:02, Craig Rodrigues <rodr...@freebsd.org> wrote:
> 
> On Sun, Mar 22, 2015 at 11:26 AM, <jenkins-ad...@freebsd.org> wrote:
> 
>> See <https://jenkins.freebsd.org/job/FreeBSD_HEAD-tests2/867/>
>> 
> 
> Can someone with toolchain expertise look at this?
> After the clang 3.6.1 import, /bin/expr behaves differently.
> 
> With clang 3.5.0:
> 
> # expr 4611686018427387904 + 4611686018427387904
> expr: overflow
> 
> With clang 3.6.1:
> 
> # expr 4611686018427387904 + 4611686018427387904
> -9223372036854775808

It works fine for me:

$ /usr/obj/usr/src/bin/expr/expr 4611686018427387904 + 4611686018427387904
expr: overflow

Are you using any special compilation flags?  That said, having taken a
quick look at expr.y, it does seem to rely on signed integer wrapping.

-Dimitry

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

Reply via email to