diff options
Diffstat (limited to 'src/backend/utils')
-rw-r--r-- | src/backend/utils/adt/float.c | 22 | ||||
-rw-r--r-- | src/backend/utils/adt/oid.c | 18 | ||||
-rw-r--r-- | src/backend/utils/error/elog.c | 5 | ||||
-rw-r--r-- | src/backend/utils/error/exc.c | 5 |
4 files changed, 36 insertions, 14 deletions
diff --git a/src/backend/utils/adt/float.c b/src/backend/utils/adt/float.c index 52fc5f98e3a..509ce6ce6d4 100644 --- a/src/backend/utils/adt/float.c +++ b/src/backend/utils/adt/float.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/adt/float.c,v 1.12 1997/02/19 20:10:49 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/adt/float.c,v 1.13 1997/03/12 21:09:11 scrappy Exp $ * *------------------------------------------------------------------------- */ @@ -100,6 +100,26 @@ extern double atof(const char *p); #define FLOAT8_MAX DBL_MAX #define FLOAT8_MIN DBL_MIN +/* + * if FLOAT8_MIN and FLOAT8_MAX are the limits of the range a + * double can store, then how are we ever going to wind up + * with something stored in a double that is outside those + * limits? (and similarly for FLOAT4_{MIN,MAX}/float.) + * doesn't make sense to me, and it causes a + * floating point exception on linuxalpha, so UNSAFE_FLOATS + * it is. + * (maybe someone wanted to allow for values other than DBL_MIN/ + * DBL_MAX for FLOAT8_MIN/FLOAT8_MAX?) + * --djm 12/12/96 + * according to Richard Henderson this is a known bug in gcc on + * the Alpha. might as well leave the workaround in + * until the distributions are updated. + * --djm 12/16/96 + */ +#if defined(linuxalpha) && !defined(UNSAFE_FLOATS) +#define UNSAFE_FLOATS +#endif + /* check to see if a float4 val is outside of the FLOAT4_MIN, FLOAT4_MAX bounds. diff --git a/src/backend/utils/adt/oid.c b/src/backend/utils/adt/oid.c index 7f5a05e5bea..2ee6cb65453 100644 --- a/src/backend/utils/adt/oid.c +++ b/src/backend/utils/adt/oid.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/adt/oid.c,v 1.4 1997/01/10 20:19:45 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/adt/oid.c,v 1.5 1997/03/12 21:09:15 scrappy Exp $ * *------------------------------------------------------------------------- */ @@ -37,14 +37,14 @@ Oid *oid8in(char *oidString) return(NULL); result = (Oid (*)[]) palloc(sizeof(Oid [8])); if ((nums = sscanf(oidString, "%d%d%d%d%d%d%d%d", - *result, - *result + 1, - *result + 2, - *result + 3, - *result + 4, - *result + 5, - *result + 6, - *result + 7)) != 8) { + &(*result)[0], + &(*result)[1], + &(*result)[2], + &(*result)[3], + &(*result)[4], + &(*result)[5], + &(*result)[6], + &(*result)[7])) != 8) { do (*result)[nums++] = 0; while (nums < 8); diff --git a/src/backend/utils/error/elog.c b/src/backend/utils/error/elog.c index 992fd7cb0ff..77477ab222f 100644 --- a/src/backend/utils/error/elog.c +++ b/src/backend/utils/error/elog.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/error/elog.c,v 1.12 1997/02/14 04:17:57 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/error/elog.c,v 1.13 1997/03/12 21:10:53 scrappy Exp $ * *------------------------------------------------------------------------- */ @@ -49,7 +49,8 @@ elog(int lev, const char *fmt, ... ) extern int errno, sys_nerr; #if !defined(BSD44_derived) && \ !defined(bsdi) && \ - !defined(bsdi_2_1) + !defined(bsdi_2_1) && \ + !defined(linuxalpha) extern char *sys_errlist[]; #endif /* bsd derived */ #ifndef PG_STANDALONE diff --git a/src/backend/utils/error/exc.c b/src/backend/utils/error/exc.c index 1caa5bca93f..9eae4ad109c 100644 --- a/src/backend/utils/error/exc.c +++ b/src/backend/utils/error/exc.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/utils/error/Attic/exc.c,v 1.9 1996/12/27 13:13:58 vadim Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/error/Attic/exc.c,v 1.10 1997/03/12 21:10:56 scrappy Exp $ * * NOTE * XXX this code needs improvement--check for state violations and @@ -95,7 +95,8 @@ ExcPrint(Exception *excP, extern int sys_nerr; #if !defined(BSD44_derived) && \ !defined(bsdi) && \ - !defined(bsdi_2_1) + !defined(bsdi_2_1) && \ + !defined(linuxalpha) extern char *sys_errlist[]; #endif /* ! bsd_derived */ |