summaryrefslogtreecommitdiff
path: root/src/backend
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2005-05-25 21:40:43 +0000
committerBruce Momjian <bruce@momjian.us>2005-05-25 21:40:43 +0000
commitb492c3acccb3f8c97559ddfc2a25f25953a026d2 (patch)
treea9c42aa2bd86a88a849ffaa005766ffe3dee762a /src/backend
parent13b729ca5267b58005f1ca9c873a86c2b0db3591 (diff)
downloadpostgresql-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.c20
-rw-r--r--src/backend/regex/regcomp.c4
-rw-r--r--src/backend/utils/adt/formatting.c22
-rw-r--r--src/backend/utils/adt/pg_lzcompress.c22
-rw-r--r--src/backend/utils/sort/tuplesort.c4
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))
/*