Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Mon, 23 May 2016 20:01:24 +0200
From: Ed Schouten <>
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 <>
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.