diff options
| author | Bruce Momjian <bruce@momjian.us> | 2005-05-25 21:40:43 +0000 |
|---|---|---|
| committer | Bruce Momjian <bruce@momjian.us> | 2005-05-25 21:40:43 +0000 |
| commit | b492c3acccb3f8c97559ddfc2a25f25953a026d2 (patch) | |
| tree | a9c42aa2bd86a88a849ffaa005766ffe3dee762a /src/backend | |
| parent | 13b729ca5267b58005f1ca9c873a86c2b0db3591 (diff) | |
| download | postgresql-b492c3acccb3f8c97559ddfc2a25f25953a026d2.tar.gz | |
Add parentheses to macros when args are used in computations. Without
them, the executation behavior could be unexpected.
Diffstat (limited to 'src/backend')
| -rw-r--r-- | src/backend/access/hash/hashfunc.c | 20 | ||||
| -rw-r--r-- | src/backend/regex/regcomp.c | 4 | ||||
| -rw-r--r-- | src/backend/utils/adt/formatting.c | 22 | ||||
| -rw-r--r-- | src/backend/utils/adt/pg_lzcompress.c | 22 | ||||
| -rw-r--r-- | src/backend/utils/sort/tuplesort.c | 4 |
5 files changed, 36 insertions, 36 deletions
diff --git a/src/backend/access/hash/hashfunc.c b/src/backend/access/hash/hashfunc.c index 46033b19e9..05ca3bcdb1 100644 --- a/src/backend/access/hash/hashfunc.c +++ b/src/backend/access/hash/hashfunc.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/access/hash/hashfunc.c,v 1.43 2005/03/29 00:16:50 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/access/hash/hashfunc.c,v 1.44 2005/05/25 21:40:40 momjian Exp $ * * NOTES * These functions are stored in pg_amproc. For each operator class @@ -192,15 +192,15 @@ hashvarlena(PG_FUNCTION_ARGS) */ #define mix(a,b,c) \ { \ - a -= b; a -= c; a ^= (c>>13); \ - b -= c; b -= a; b ^= (a<<8); \ - c -= a; c -= b; c ^= (b>>13); \ - a -= b; a -= c; a ^= (c>>12); \ - b -= c; b -= a; b ^= (a<<16); \ - c -= a; c -= b; c ^= (b>>5); \ - a -= b; a -= c; a ^= (c>>3); \ - b -= c; b -= a; b ^= (a<<10); \ - c -= a; c -= b; c ^= (b>>15); \ + a -= b; a -= c; a ^= ((c)>>13); \ + b -= c; b -= a; b ^= ((a)<<8); \ + c -= a; c -= b; c ^= ((b)>>13); \ + a -= b; a -= c; a ^= ((c)>>12); \ + b -= c; b -= a; b ^= ((a)<<16); \ + c -= a; c -= b; c ^= ((b)>>5); \ + a -= b; a -= c; a ^= ((c)>>3); \ + b -= c; b -= a; b ^= ((a)<<10); \ + c -= a; c -= b; c ^= ((b)>>15); \ } /* diff --git a/src/backend/regex/regcomp.c b/src/backend/regex/regcomp.c index cdf2683bc7..8ba3451245 100644 --- a/src/backend/regex/regcomp.c +++ b/src/backend/regex/regcomp.c @@ -28,7 +28,7 @@ * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $PostgreSQL: pgsql/src/backend/regex/regcomp.c,v 1.42 2004/11/24 22:56:54 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/regex/regcomp.c,v 1.43 2005/05/25 21:40:40 momjian Exp $ * */ @@ -232,7 +232,7 @@ struct vars struct cvec *cv; /* interface cvec */ struct cvec *cv2; /* utility cvec */ struct cvec *mcces; /* collating-element information */ -#define ISCELEADER(v,c) (v->mcces != NULL && haschr(v->mcces, (c))) +#define ISCELEADER(v,c) ((v)->mcces != NULL && haschr((v)->mcces, (c))) struct state *mccepbegin; /* in nfa, start of MCCE prototypes */ struct state *mccepend; /* in nfa, end of MCCE prototypes */ struct subre *lacons; /* lookahead-constraint vector */ diff --git a/src/backend/utils/adt/formatting.c b/src/backend/utils/adt/formatting.c index 8645fceecf..68a73bbb6f 100644 --- a/src/backend/utils/adt/formatting.c +++ b/src/backend/utils/adt/formatting.c @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------- * formatting.c * - * $PostgreSQL: pgsql/src/backend/utils/adt/formatting.c,v 1.86 2005/03/26 00:41:31 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/utils/adt/formatting.c,v 1.87 2005/05/25 21:40:40 momjian Exp $ * * * Portions Copyright (c) 1999-2005, PostgreSQL Global Development Group @@ -171,7 +171,7 @@ static char *months_full[] = { * AC / DC * ---------- */ -#define YEAR_ABS(_y) (_y <= 0 ? -(_y -1) : _y) +#define YEAR_ABS(_y) ((_y) <= 0 ? -((_y) - 1) : _y) #define BC_STR_ORIG " BC" #define A_D_STR "A.D." @@ -280,15 +280,15 @@ typedef struct */ #define NUM_F_DECIMAL (1 << 1) #define NUM_F_LDECIMAL (1 << 2) -#define NUM_F_ZERO (1 << 3) +#define NUM_F_ZERO (1 << 3) #define NUM_F_BLANK (1 << 4) #define NUM_F_FILLMODE (1 << 5) #define NUM_F_LSIGN (1 << 6) #define NUM_F_BRACKET (1 << 7) #define NUM_F_MINUS (1 << 8) -#define NUM_F_PLUS (1 << 9) +#define NUM_F_PLUS (1 << 9) #define NUM_F_ROMAN (1 << 10) -#define NUM_F_MULTI (1 << 11) +#define NUM_F_MULTI (1 << 11) #define NUM_F_PLUS_POST (1 << 12) #define NUM_F_MINUS_POST (1 << 13) @@ -457,13 +457,13 @@ static int dch_date(int arg, char *inout, int suf, int flag, FormatNode *node, v * Suffix tests * ---------- */ -#define S_THth(_s) (((_s & DCH_S_TH) || (_s & DCH_S_th)) ? 1 : 0) -#define S_TH(_s) ((_s & DCH_S_TH) ? 1 : 0) -#define S_th(_s) ((_s & DCH_S_th) ? 1 : 0) -#define S_TH_TYPE(_s) ((_s & DCH_S_TH) ? TH_UPPER : TH_LOWER) +#define S_THth(_s) ((((_s) & DCH_S_TH) || ((_s) & DCH_S_th)) ? 1 : 0) +#define S_TH(_s) (((_s) & DCH_S_TH) ? 1 : 0) +#define S_th(_s) (((_s) & DCH_S_th) ? 1 : 0) +#define S_TH_TYPE(_s) (((_s) & DCH_S_TH) ? TH_UPPER : TH_LOWER) -#define S_FM(_s) ((_s & DCH_S_FM) ? 1 : 0) -#define S_SP(_s) ((_s & DCH_S_SP) ? 1 : 0) +#define S_FM(_s) (((_s) & DCH_S_FM) ? 1 : 0) +#define S_SP(_s) (((_s) & DCH_S_SP) ? 1 : 0) /* ---------- * Suffixes definition for DATE-TIME TO/FROM CHAR diff --git a/src/backend/utils/adt/pg_lzcompress.c b/src/backend/utils/adt/pg_lzcompress.c index a4ca8b0bbf..d7c34b6a92 100644 --- a/src/backend/utils/adt/pg_lzcompress.c +++ b/src/backend/utils/adt/pg_lzcompress.c @@ -1,7 +1,7 @@ /* ---------- * pg_lzcompress.c - * - * $PostgreSQL: pgsql/src/backend/utils/adt/pg_lzcompress.c,v 1.18 2003/11/29 19:51:59 pgsql Exp $ + * $PostgreSQL: pgsql/src/backend/utils/adt/pg_lzcompress.c,v 1.19 2005/05/25 21:40:41 momjian Exp $ * * This is an implementation of LZ compression for PostgreSQL. * It uses a simple history table and generates 2-3 byte tags @@ -328,8 +328,8 @@ do { \ do { \ if ((__ctrl & 0xff) == 0) \ { \ - *__ctrlp = __ctrlb; \ - __ctrlp = __buf++; \ + *(__ctrlp) = __ctrlb; \ + __ctrlp = (__buf)++; \ __ctrlb = 0; \ __ctrl = 1; \ } \ @@ -346,7 +346,7 @@ do { \ #define pglz_out_literal(_ctrlp,_ctrlb,_ctrl,_buf,_byte) \ do { \ pglz_out_ctrl(_ctrlp,_ctrlb,_ctrl,_buf); \ - *_buf++ = (unsigned char)(_byte); \ + *(_buf)++ = (unsigned char)(_byte); \ _ctrl <<= 1; \ } while (0) @@ -366,14 +366,14 @@ do { \ _ctrl <<= 1; \ if (_len > 17) \ { \ - _buf[0] = (unsigned char)((((_off) & 0xf00) >> 4) | 0x0f); \ - _buf[1] = (unsigned char)((_off & 0xff)); \ - _buf[2] = (unsigned char)((_len) - 18); \ - _buf += 3; \ + (_buf)[0] = (unsigned char)((((_off) & 0xf00) >> 4) | 0x0f); \ + (_buf)[1] = (unsigned char)(((_off) & 0xff)); \ + (_buf)[2] = (unsigned char)((_len) - 18); \ + (_buf) += 3; \ } else { \ - _buf[0] = (unsigned char)((((_off) & 0xf00) >> 4) | (_len - 3)); \ - _buf[1] = (unsigned char)((_off) & 0xff); \ - _buf += 2; \ + (_buf)[0] = (unsigned char)((((_off) & 0xf00) >> 4) | ((_len) - 3)); \ + (_buf)[1] = (unsigned char)((_off) & 0xff); \ + (_buf) += 2; \ } \ } while (0) diff --git a/src/backend/utils/sort/tuplesort.c b/src/backend/utils/sort/tuplesort.c index deedd53bd3..12704a09c4 100644 --- a/src/backend/utils/sort/tuplesort.c +++ b/src/backend/utils/sort/tuplesort.c @@ -78,7 +78,7 @@ * Portions Copyright (c) 1994, Regents of the University of California * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/sort/tuplesort.c,v 1.48 2005/05/06 17:24:54 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/utils/sort/tuplesort.c,v 1.49 2005/05/25 21:40:41 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -1564,7 +1564,7 @@ tuplesort_restorepos(Tuplesortstate *state) */ #define HEAPCOMPARE(tup1,index1,tup2,index2) \ - (checkIndex && (index1 != index2) ? index1 - index2 : \ + (checkIndex && (index1 != index2) ? (index1) - (index2) : \ COMPARETUP(state, tup1, tup2)) /* |
