Same with 5.7 under virtualbox.

On 8/6/15, Assaf Gordon <assafgor...@gmail.com> wrote:
> Hello,
>
> On OpenBSD-5.7/amd64 (under qemu/kvm), I'm getting incorrect results
> when using ceill(3). For values between 0 and 1, the returned value
> is 0, while I'd expected it to be 1. Using ceil(3) does return 1 as
> expected. Is this my incorrect usage or a bug?
> any advice/comment will be appreciated.
>
> To reproduce:
>
>     $ cat 1.c
>     #include <math.h>
>     #include <stdio.h>
>     int main()
>     {
>         long double d;
>         printf("d    ceill(d) ceil(d)\n");
>         for (d = 0.3; d <= 3.8; d+=0.5)
>                 printf("%-4Lg %-8Lg %-5g\n",
>                         d, ceill(d), ceil((double)d));
>         return 0;
>     }
>
>     $ gcc -g -O0 -Wall -Wextra -o 1 1.c -lm
>     $ ./1
>     d    ceill(d) ceil(d)
>     0.3  0        1        <----
>     0.8  0        1        <----
>     1.3  2        2
>     1.8  2        2
>     2.3  3        3
>     2.8  3        3
>     3.3  4        4
>
> Thanks,
>   - assaf

Reply via email to