diff --git a/contrib/fuzzystrmatch/fuzzystrmatch.c b/contrib/fuzzystrmatch/fuzzystrmatch.c index 4a2d3f932e..d6ec0f5c30 100644 --- a/contrib/fuzzystrmatch/fuzzystrmatch.c +++ b/contrib/fuzzystrmatch/fuzzystrmatch.c @@ -280,9 +280,9 @@ char Lookahead(char * word, int how_far) { /* phonize one letter */ -#define Phonize(c) {(*phoned_word)[p_idx++] = c;} +#define Phonize(c) do {(*phoned_word)[p_idx++] = c;} while (0) /* Slap a null character on the end of the phoned word */ -#define End_Phoned_Word {(*phoned_word)[p_idx] = '\0';} +#define End_Phoned_Word do {(*phoned_word)[p_idx] = '\0';} while (0) /* How long is the phoned word? */ #define Phone_Len (p_idx) diff --git a/contrib/pgcrypto/md5.c b/contrib/pgcrypto/md5.c index 3ae9d09982..d022d61627 100644 --- a/contrib/pgcrypto/md5.c +++ b/contrib/pgcrypto/md5.c @@ -1,4 +1,4 @@ -/* $Id: md5.c,v 1.6 2001/08/21 00:42:41 momjian Exp $ */ +/* $Id: md5.c,v 1.7 2001/10/25 01:29:37 momjian Exp $ */ /* $KAME: md5.c,v 1.3 2000/02/22 14:01:17 itojun Exp $ */ /* @@ -41,29 +41,33 @@ #define H(X, Y, Z) ((X) ^ (Y) ^ (Z)) #define I(X, Y, Z) ((Y) ^ ((X) | (~Z))) -#define ROUND1(a, b, c, d, k, s, i) { \ +#define ROUND1(a, b, c, d, k, s, i) \ +do { \ (a) = (a) + F((b), (c), (d)) + X[(k)] + T[(i)]; \ (a) = SHIFT((a), (s)); \ (a) = (b) + (a); \ -} +} while (0) -#define ROUND2(a, b, c, d, k, s, i) { \ +#define ROUND2(a, b, c, d, k, s, i) \ +do { \ (a) = (a) + G((b), (c), (d)) + X[(k)] + T[(i)]; \ (a) = SHIFT((a), (s)); \ (a) = (b) + (a); \ -} +} while (0) -#define ROUND3(a, b, c, d, k, s, i) { \ +#define ROUND3(a, b, c, d, k, s, i) \ +do { \ (a) = (a) + H((b), (c), (d)) + X[(k)] + T[(i)]; \ (a) = SHIFT((a), (s)); \ (a) = (b) + (a); \ -} +} while (0) -#define ROUND4(a, b, c, d, k, s, i) { \ +#define ROUND4(a, b, c, d, k, s, i) \ +do { \ (a) = (a) + I((b), (c), (d)) + X[(k)] + T[(i)]; \ (a) = SHIFT((a), (s)); \ (a) = (b) + (a); \ -} +} while (0) #define Sa 7 #define Sb 12 diff --git a/contrib/pgcrypto/sha1.c b/contrib/pgcrypto/sha1.c index 98ad552182..20c6230540 100644 --- a/contrib/pgcrypto/sha1.c +++ b/contrib/pgcrypto/sha1.c @@ -1,4 +1,4 @@ -/* $Id: sha1.c,v 1.6 2001/08/21 00:42:41 momjian Exp $ */ +/* $Id: sha1.c,v 1.7 2001/10/25 01:29:37 momjian Exp $ */ /* $KAME: sha1.c,v 1.3 2000/02/22 14:01:18 itojun Exp $ */ /* @@ -65,22 +65,24 @@ static uint32 _K[] = {0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6}; #define BCOUNT (ctxt->c.b64[0] / 8) #define W(n) (ctxt->m.b32[(n)]) -#define PUTBYTE(x) { \ +#define PUTBYTE(x) \ +do { \ ctxt->m.b8[(COUNT % 64)] = (x); \ COUNT++; \ COUNT %= 64; \ ctxt->c.b64[0] += 8; \ if (COUNT % 64 == 0) \ sha1_step(ctxt); \ - } +} while (0) -#define PUTPAD(x) { \ +#define PUTPAD(x) \ +do { \ ctxt->m.b8[(COUNT % 64)] = (x); \ COUNT++; \ COUNT %= 64; \ if (COUNT % 64 == 0) \ sha1_step(ctxt); \ - } +} while (0) static void sha1_step(struct sha1_ctxt *); diff --git a/contrib/tsearch/query.c b/contrib/tsearch/query.c index fe312ef0f5..238432ea43 100644 --- a/contrib/tsearch/query.c +++ b/contrib/tsearch/query.c @@ -555,7 +555,9 @@ typedef struct { int4 buflen; } INFIX; -#define RESIZEBUF(inf,addsize) while( ( inf->cur - inf->buf ) + addsize + 1 >= inf->buflen ) { \ +#define RESIZEBUF(inf,addsize) \ +while( ( inf->cur - inf->buf ) + addsize + 1 >= inf->buflen ) \ +{ \ int4 len = inf->cur - inf->buf; \ inf->buflen *= 2; \ inf->buf = (char*) repalloc( (void*)inf->buf, inf->buflen ); \ diff --git a/contrib/tsearch/txtidx.c b/contrib/tsearch/txtidx.c index 39a64437c5..e1abd54d3b 100644 --- a/contrib/tsearch/txtidx.c +++ b/contrib/tsearch/txtidx.c @@ -88,12 +88,16 @@ uniqueentry( WordEntry* a, int4 l, char *buf, int4 *outbuflen ) { #define WAITNEXTCHAR 3 #define WAITENDCMPLX 4 -#define RESIZEPRSBUF if ( state->curpos - state->word == state->len ) { \ +#define RESIZEPRSBUF \ +do { \ + if ( state->curpos - state->word == state->len ) \ + { \ int4 clen = state->curpos - state->word; \ state->len *= 2; \ state->word = (char*)repalloc( (void*)state->word, state->len ); \ state->curpos = state->word + clen; \ -} + } \ +} while (0) int4 gettoken_txtidx( TI_IN_STATE *state ) { diff --git a/src/backend/port/dynloader/bsdi.h b/src/backend/port/dynloader/bsdi.h index 834dff0d70..2ea466317c 100644 --- a/src/backend/port/dynloader/bsdi.h +++ b/src/backend/port/dynloader/bsdi.h @@ -27,7 +27,11 @@ #else /* not HAVE_DLOPEN */ #define pg_dlsym(handle, funcname) ((PGFunction) dld_get_func((funcname))) -#define pg_dlclose(handle) ({ dld_unlink_by_file(handle, 1); free(handle); }) +#define pg_dlclose(handle) \ +do { \ + dld_unlink_by_file(handle, 1); \ + free(handle); \ +} while (0) #endif /* not HAVE_DLOPEN */ diff --git a/src/backend/port/dynloader/linux.h b/src/backend/port/dynloader/linux.h index d6873763b4..290771cfc0 100644 --- a/src/backend/port/dynloader/linux.h +++ b/src/backend/port/dynloader/linux.h @@ -6,7 +6,7 @@ * Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: linux.h,v 1.12 2001/05/14 21:45:53 petere Exp $ + * $Id: linux.h,v 1.13 2001/10/25 01:29:37 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -23,10 +23,15 @@ #ifndef HAVE_DLD_H #define pg_dlsym(handle, funcname) (NULL) -#define pg_dlclose(handle) ({}) +#define pg_dlclose(handle) {} #else #define pg_dlsym(handle, funcname) ((PGFunction) dld_get_func((funcname))) -#define pg_dlclose(handle) ({ dld_unlink_by_file(handle, 1); free(handle); }) +#define pg_dlclose(handle) \ +do { \ + dld_unlink_by_file(handle, 1); \ + free(handle); \ +} while (0) + #endif #else /* HAVE_DLOPEN */ diff --git a/src/backend/regex/engine.c b/src/backend/regex/engine.c index 8bf0ee6895..2d7f4ee92d 100644 --- a/src/backend/regex/engine.c +++ b/src/backend/regex/engine.c @@ -129,7 +129,12 @@ static int pg_isprint(int c); #ifdef REDEBUG #define SP(t, s, c) print(m, t, s, c, stdout) #define AT(t, p1, p2, s1, s2) at(m, t, p1, p2, s1, s2) -#define NOTE(str) { if (m->eflags®_TRACE) printf("=%s\n", (str)); } +#define NOTE(str) \ +do { \ + if (m->eflags®_TRACE) \ + printf("=%s\n", (str)); \ +} while (0) + #else #define SP(t, s, c) /* nothing */ #define AT(t, p1, p2, s1, s2) /* nothing */ diff --git a/src/backend/regex/regexec.c b/src/backend/regex/regexec.c index cb52ad9afe..b1733a9d40 100644 --- a/src/backend/regex/regexec.c +++ b/src/backend/regex/regexec.c @@ -114,10 +114,19 @@ static int nope = 0; /* for use in asserts; shuts lint up */ #define ASSIGN(d, s) memcpy(d, s, m->g->nstates) #define EQ(a, b) (memcmp(a, b, m->g->nstates) == 0) #define STATEVARS int vn; char *space -#define STATESETUP(m, nv) { (m)->space = malloc((nv)*(m)->g->nstates); \ - if ((m)->space == NULL) return(REG_ESPACE); \ - (m)->vn = 0; } -#define STATETEARDOWN(m) { free((m)->space); } +#define STATESETUP(m, nv) \ +do { \ + (m)->space = malloc((nv)*(m)->g->nstates); \ + if ((m)->space == NULL) \ + return(REG_ESPACE); \ + (m)->vn = 0; \ +} while (0) + +#define STATETEARDOWN(m) \ +do { \ + free((m)->space); \ +} while (0) + #define SETUP(v) ((v) = &m->space[m->vn++ * m->g->nstates]) #define onestate int #define INIT(o, n) ((o) = (n)) diff --git a/src/backend/utils/adt/pg_lzcompress.c b/src/backend/utils/adt/pg_lzcompress.c index d92d969d40..5c6cc6e1e4 100644 --- a/src/backend/utils/adt/pg_lzcompress.c +++ b/src/backend/utils/adt/pg_lzcompress.c @@ -1,7 +1,7 @@ /* ---------- * pg_lzcompress.c - * - * $Header: /cvsroot/pgsql/src/backend/utils/adt/pg_lzcompress.c,v 1.11 2001/03/22 06:16:17 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/utils/adt/pg_lzcompress.c,v 1.12 2001/10/25 01:29:37 momjian Exp $ * * This is an implementation of LZ compression for PostgreSQL. * It uses a simple history table and generates 2-3 byte tags @@ -283,7 +283,8 @@ static PGLZ_HistEntry hist_entries[PGLZ_HISTORY_SIZE]; * Adds a new entry to the history table. * ---------- */ -#define pglz_hist_add(_hs,_he,_hn,_s,_e) { \ +#define pglz_hist_add(_hs,_he,_hn,_s,_e) \ +do { \ int __hindex = pglz_hist_idx((_s),(_e)); \ if ((_he)[(_hn)].prev == NULL) { \ (_hs)[__hindex] = (_he)[(_hn)].next; \ @@ -303,7 +304,7 @@ static PGLZ_HistEntry hist_entries[PGLZ_HISTORY_SIZE]; if (++(_hn) >= PGLZ_HISTORY_SIZE) { \ (_hn) = 0; \ } \ - } +} while (0) /* ---------- @@ -312,7 +313,8 @@ static PGLZ_HistEntry hist_entries[PGLZ_HISTORY_SIZE]; * Outputs the last and allocates a new control byte if needed. * ---------- */ -#define pglz_out_ctrl(__ctrlp,__ctrlb,__ctrl,__buf) { \ +#define pglz_out_ctrl(__ctrlp,__ctrlb,__ctrl,__buf) \ +do { \ if ((__ctrl & 0xff) == 0) \ { \ *__ctrlp = __ctrlb; \ @@ -320,7 +322,7 @@ static PGLZ_HistEntry hist_entries[PGLZ_HISTORY_SIZE]; __ctrlb = 0; \ __ctrl = 1; \ } \ -} +} while (0) /* ---------- @@ -330,11 +332,12 @@ static PGLZ_HistEntry hist_entries[PGLZ_HISTORY_SIZE]; * appropriate control bit. * ---------- */ -#define pglz_out_literal(_ctrlp,_ctrlb,_ctrl,_buf,_byte) { \ +#define pglz_out_literal(_ctrlp,_ctrlb,_ctrl,_buf,_byte) \ +do { \ pglz_out_ctrl(_ctrlp,_ctrlb,_ctrl,_buf); \ *_buf++ = (unsigned char)(_byte); \ _ctrl <<= 1; \ -} +} while (0) /* ---------- @@ -345,7 +348,8 @@ static PGLZ_HistEntry hist_entries[PGLZ_HISTORY_SIZE]; * appropriate control bit. * ---------- */ -#define pglz_out_tag(_ctrlp,_ctrlb,_ctrl,_buf,_len,_off) { \ +#define pglz_out_tag(_ctrlp,_ctrlb,_ctrl,_buf,_len,_off) \ +do { \ pglz_out_ctrl(_ctrlp,_ctrlb,_ctrl,_buf); \ _ctrlb |= _ctrl; \ _ctrl <<= 1; \ @@ -360,7 +364,7 @@ static PGLZ_HistEntry hist_entries[PGLZ_HISTORY_SIZE]; _buf[1] = (unsigned char)((_off) & 0xff); \ _buf += 2; \ } \ -} +} while (0) /* ---------- diff --git a/src/interfaces/odbc/convert.c b/src/interfaces/odbc/convert.c index 6210d030bf..2afc079dfd 100644 --- a/src/interfaces/odbc/convert.c +++ b/src/interfaces/odbc/convert.c @@ -817,7 +817,10 @@ do { \ * Terminate the stmt_with_params string with NULL. *---------- */ -#define CVT_TERMINATE { new_statement[npos] = '\0'; } +#define CVT_TERMINATE \ +do { \ + new_statement[npos] = '\0'; \ +} while (0) /*---------- * Append a data. @@ -1434,7 +1437,7 @@ copy_statement_with_parameters(StatementClass *stmt) /* error */ stmt->errormsg = "Unrecognized C_parameter type in copy_statement_with_parameters"; stmt->errornumber = STMT_NOT_IMPLEMENTED_ERROR; - CVT_TERMINATE /* just in case */ + CVT_TERMINATE; /* just in case */ SC_log_error(func, "", stmt); return SQL_ERROR; } @@ -1684,7 +1687,7 @@ copy_statement_with_parameters(StatementClass *stmt) } /* end, for */ /* make sure new_statement is always null-terminated */ - CVT_TERMINATE + CVT_TERMINATE; if (conn->DriverToDataSource != NULL) { diff --git a/src/interfaces/odbc/iodbc.h b/src/interfaces/odbc/iodbc.h index 21091de90f..99ed552055 100644 --- a/src/interfaces/odbc/iodbc.h +++ b/src/interfaces/odbc/iodbc.h @@ -8,7 +8,11 @@ #include #define MEM_ALLOC(size) (malloc((size_t)(size))) -#define MEM_FREE(ptr) {if(ptr) free(ptr);} +#define MEM_FREE(ptr) \ +do { \ + if(ptr) \ + free(ptr); \ +} while (0) #define STRCPY(t, s) (strcpy((char*)(t), (char*)(s))) #define STRNCPY(t,s,n) (strncpy((char*)(t), (char*)(s), (size_t)(n))) diff --git a/src/tools/find_baddefs b/src/tools/find_baddefs index 07f6fa2c61..8a12b59bec 100755 --- a/src/tools/find_baddefs +++ b/src/tools/find_baddefs @@ -14,6 +14,7 @@ do was_define = "Y" else was_define = "N" - }' $FILE + }' "$FILE" + grep -on '^#define.*{' "$FILE" | grep -v 'do[ ]*{' done