|
Message-ID: <20160523223030.GH21636@brightrain.aerifal.cx> Date: Mon, 23 May 2016 18:30:30 -0400 From: Rich Felker <dalias@...c.org> To: musl@...ts.openwall.com Subject: Re: a64l(): return value should be sign extended On Mon, May 23, 2016 at 08:01:24PM +0200, Ed Schouten wrote: > Hi there, > > While reading some of musl's sources, I think I might have found a > tiny bug, though I haven't tested the code myself. > > The 'x' variable in the a64l() function has type uint32_t, meaning > that the function computes a value between [0,2^32). According to > POSIX, the return value of this function should be sign extended -- > not zero extended -- in case long is larger than 32 bits. This means > that the return statement in this function should either cast x to an > int32_t, or the declaration of x should be changed to an int32_t. Thanks. There are actually several more bugs here. I'm fixing them all together; see the commit message for details: https://git.musl-libc.org/cgit/musl/commit/?id=77baaa47e107f176fb2dc150dd6a9ad87f6cbe24 Rich
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.