Date: Wed, 17 Mar 1999 13:11:09 +0000 From: spinner.rflab@t-online.de (Steffen Hein) To: freebsd-questions@freebsd.org Subject: gnu C compiler Message-ID: <36EFA9ED.5126E95C@t-online.de>
next in thread | raw e-mail | index | archive | help
Dear Friends, How can you explain me that the same gnu C compiler ( release 2.7.2.1 ) in FreeBSD apparently does not handle the long double format correctly while in Linux it does ? Compiling the following program 'proto.c' in FreeBSD and in Linux as # cc -ansi proto.c -o proto.a and running proto.a in the two systems yields the displayed outputs /*********************************************************************** C program proto.c ***********************************************************************/ # define _POSIX_SOURCE # include <stdio.h> # include <stdlib.h> # include <stddef.h> # include <stdarg.h> # include <float.h> # include <math.h> # include <string.h> # include <ctype.h> # include <locale.h> # include <unistd.h> main( ) { printf( "\n\n Ranges : " ); printf( "\n\n FLT_MIN = % le ", FLT_MIN); printf( "\n FLT_MAX = % le ", FLT_MAX ); printf( "\n DBL_MIN = % le ", DBL_MIN ); printf( "\n DBL_MAX = % le ", DBL_MAX ); printf( "\n LDBL_MIN = % Le ", LDBL_MIN ); printf( "\n LDBL_MAX = % Le ", LDBL_MAX ); printf( "\n\n Epsilon : " ); printf( "\n\n FLT_EPSILON = % le ", FLT_EPSILON ); printf( "\n DBL_EPSILON = % le ", DBL_EPSILON ); printf( "\n LDBL_EPSILON = % Le ", LDBL_EPSILON ); printf( "\n\n Precision : " ); printf( "\n\n FLT_DIG = % d ", FLT_DIG ); printf( "\n DBL_DIG = % d ", DBL_DIG ); printf( "\n LDBL_DIG = % d ", LDBL_DIG ); printf( "\n\n End " ); exit(NULL); } ======================================================================== FreeBSD output: Linux output: Ranges : FLT_MIN = 1.175494e-38 FLT_MAX = 3.402823e+38 DBL_MIN = 2.225074e-308 DBL_MAX = 1.797693e+308 LDBL_MIN = 3.362103e-4932 LDBL_MAX = 1.189731e+4932 Epsilon : FLT_EPSILON = 1.192093e-07 DBL_EPSILON = 2.220446e-16 LDBL_EPSILON = 1.084202e-19 Precision : FLT_DIG = 6 DBL_DIG = 15 LDBL_DIG = 18 End # Ranges : FLT_MIN = 1.175494e-38 FLT_MAX = 3.402823e+38 DBL_MIN = 2.225074e-308 DBL_MAX = 1.797693e+308 Floating point exception - core dumped To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?36EFA9ED.5126E95C>