|
Message-ID: <CABh_MKkNiTPC+mevnyLa1vNH2LnpyCOOT-=Ko+ZBUYTR06zZSg@mail.gmail.com> Date: Mon, 23 May 2016 20:01:24 +0200 From: Ed Schouten <ed@...i.nl> To: musl@...ts.openwall.com Subject: a64l(): return value should be sign extended 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. Best regards, -- Ed Schouten <ed@...i.nl> Nuxi, 's-Hertogenbosch, the Netherlands KvK-nr.: 62051717
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.