This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

other/8974: fabs error with -ansi


>Number:         8974
>Category:       other
>Synopsis:       fabs error with -ansi
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Dec 17 02:16:01 PST 2002
>Closed-Date:
>Last-Modified:
>Originator:     Warren du Plessis
>Release:        unknown-1.0
>Organization:
>Environment:
Output of gcc -v
Configured with: /var/tmp/portage/gcc-3.2-r1/work/gcc-3.2/configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu --with-system-zlib --enable-languages=c,c++,ada,f77,objc,java --enable-threads=posix --enable-long-long --disable-checking --enable-cstdio=stdio --enable-clocale=generic --enable-__cxa_atexit --enable-version-specific-runtime-libs --with-gxx-include-dir=/usr/include/g++-v32 --with-local-prefix=/usr/local --enable-shared --enable-nls --without-included-gettext
Thread model: posix
gcc version 3.2
>Description:
fabs() gives garbage (output included below) when I compile the code below with gcc 3.2 with the -ansi flag and run it on a PentiumIV 2.4 GHz I have access to.  The same code compiled with any other version of gcc or with icc works properly.  Running the same binary on a different spec machine works properly, but gives the same problem on other machines of the same type.  The problem only occurs when the -ansi flag is used (When I compile the code below with:
	gcc -ansi -lm -o test test.c
it gives problems, but when I compile with:
	gcc -lm -o test test.c
it works properly.).


Source file:
/* Test fabs problem */

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

int main()
{
  int count1;
  double value;

  /* Use a loop to show the behaviour as the values change. */
  for(count1 = 0; count1 < 8; count1++)
    {
      value = -1.35 + 0.01*count1;
      printf("%f\t%f\n", value, fabs(value));
    }

  /* Just to prove that the same thing happens with constants. */
  printf("\n%f\t%f\n", -1.29, fabs(-1.29));
  printf("%f\t%f\n", -1.28, fabs(-1.28));

  return 0;
}


Output:
-1.350000       0.000000
-1.340000       1972025612002701974956562650445561404174954378236176687125875831578843553978832422898371277103679201670561005568.000000
-1.330000       0.000000
-1.320000       427698125597735782527681486701155185015946591284413207628408209475262279918486665822208.000000
-1.310000       0.000000
-1.300000       92559680389175149863256792315491644408430319360732995401023488.000000
-1.290000       0.000000
-1.280000       19991593113087055742149331948245352448.000000

-1.290000       0.000000
-1.280000       19991593113087055742149331948245352448.000000
>How-To-Repeat:
Compile and run on a similar machine.
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/gzip; name="test.i.gz"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="test.i.gz"

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]