http://llvm.org/bugs/show_bug.cgi?id=13609

             Bug #: 13609
           Summary: trunc() is now returning incorrect results, not even
                    an integer
           Product: new-bugs
           Version: unspecified
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: new bugs
        AssignedTo: [email protected]
        ReportedBy: [email protected]
                CC: [email protected]
    Classification: Unclassified


This seems to be a recently introduced problem, because I don't believe it
happened with the clang I built last week, but it happens with the clang I
built today.

Here is my test program:

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main (int argc, char **argv)
{
  printf ("compiled with: " __VERSION__ "\n");
  printf ("trunc (-0.5) = %f\n", trunc (-0.5));
  printf ("trunc (-3.14) = %f\n", trunc (-3.14));
  printf ("trunc (-2.71) = %f\n", trunc (-2.71));
  printf ("trunc (-0.1) = %f\n", trunc (-0.1));
  return EXIT_SUCCESS;
}

And here is what happens when I run it with today's clang, and when I run it
with gcc:

ppelletier@chives:~/misc$ /home/ppelletier/clang/bin/clang trunc-test.c 
ppelletier@chives:~/misc$ ./a.out 
compiled with: 4.2.1 Compatible Clang 3.2 (trunk 161724) (llvm/trunk 161918)
trunc (-0.5) = -0.500000
trunc (-3.14) = -3.500000
trunc (-2.71) = -3.000000
trunc (-0.1) = -0.500000
ppelletier@chives:~/misc$ gcc trunc-test.c 
ppelletier@chives:~/misc$ ./a.out 
compiled with: 4.4.3
trunc (-0.5) = -0.000000
trunc (-3.14) = -3.000000
trunc (-2.71) = -2.000000
trunc (-0.1) = -0.000000

The gcc results are what I would expect, but the clang results seem obviously
wrong by inspection, in addition to disagreeing with the gcc results.

This is on Ubuntu 10.04, on an x86_64 machine.

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs

Reply via email to