Thread: Addition of macro parentheses

Addition of macro parentheses

From
Bruce Momjian
Date:
I have applied the following patch to properly use parentheses around
macro arguments used in computations.

--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073
? config.log
? GNUmakefile
? log
? config.status
? contrib/btree_gist/btree_gist.sql
? contrib/btree_gist/libbtree_gist.so.0.0
? contrib/chkpass/chkpass.sql
? contrib/chkpass/libchkpass.so.0.0
? contrib/cube/cube.sql
? contrib/cube/cubescan.c
? contrib/cube/cubeparse.c
? contrib/cube/cubeparse.h
? contrib/cube/libcube.so.0.0
? contrib/dbase/dbf2pg
? contrib/dblink/dblink.sql
? contrib/dblink/libdblink.so.0.0
? contrib/dbsize/dbsize.sql
? contrib/earthdistance/earthdistance.sql
? contrib/findoidjoins/findoidjoins
? contrib/fulltextindex/fti.sql
? contrib/fuzzystrmatch/fuzzystrmatch.sql
? contrib/fuzzystrmatch/libfuzzystrmatch.so.0.0
? contrib/intagg/int_aggregate.sql
? contrib/intarray/_int.sql
? contrib/intarray/lib_int.so.0.0
? contrib/isbn_issn/isbn_issn.sql
? contrib/lo/lo.sql
? contrib/ltree/ltree.sql
? contrib/ltree/libltree.so.0.0
? contrib/miscutil/misc_utils.sql
? contrib/noupdate/noup.sql
? contrib/oid2name/oid2name
? contrib/pg_autovacuum/pg_autovacuum
? contrib/pg_buffercache/pg_buffercache.sql
? contrib/pg_buffercache/libpg_buffercache.so.0.0
? contrib/pg_dumplo/pg_dumplo
? contrib/pg_trgm/pg_trgm.sql
? contrib/pg_trgm/libpg_trgm.so.0.0
? contrib/pgbench/pgbench
? contrib/pgcrypto/pgcrypto.sql
? contrib/pgcrypto/libpgcrypto.so.0.0
? contrib/pgstattuple/pgstattuple.sql
? contrib/pgstattuple/libpgstattuple.so.0.0
? contrib/rtree_gist/rtree_gist.sql
? contrib/seg/seg.sql
? contrib/seg/segscan.c
? contrib/seg/segparse.c
? contrib/seg/segparse.h
? contrib/seg/libseg.so.0.0
? contrib/spi/autoinc.sql
? contrib/spi/insert_username.sql
? contrib/spi/moddatetime.sql
? contrib/spi/refint.sql
? contrib/spi/timetravel.sql
? contrib/string/string_io.sql
? contrib/tablefunc/tablefunc.sql
? contrib/tsearch/tsearch.sql
? contrib/tsearch/parser.c
? contrib/tsearch/libtsearch.so.0.0
? contrib/tsearch2/tsearch2.sql
? contrib/tsearch2/untsearch2.sql
? contrib/tsearch2/libtsearch2.so.0.0
? contrib/tsearch2/wordparser/parser.c
? contrib/userlock/user_locks.sql
? contrib/vacuumlo/vacuumlo
? doc/FAQ.html
? doc/FAQ_DEV.html
? doc/src/build.dates
? src/log
? src/Makefile.global
? src/backend/postgres
? src/backend/access/transam/_xlk
? src/backend/catalog/postgres.bki
? src/backend/catalog/postgres.description
? src/backend/po/af.mo
? src/backend/po/cs.mo
? src/backend/po/de.mo
? src/backend/po/es.mo
? src/backend/po/fr.mo
? src/backend/po/hr.mo
? src/backend/po/hu.mo
? src/backend/po/it.mo
? src/backend/po/ko.mo
? src/backend/po/nb.mo
? src/backend/po/pt_BR.mo
? src/backend/po/ro.mo
? src/backend/po/ru.mo
? src/backend/po/sk.mo
? src/backend/po/sl.mo
? src/backend/po/sv.mo
? src/backend/po/tr.mo
? src/backend/po/zh_CN.mo
? src/backend/po/zh_TW.mo
? src/backend/postmaster/_xlk
? src/backend/utils/mb/conversion_procs/conversion_create.sql
? src/backend/utils/mb/conversion_procs/ascii_and_mic/libascii_and_mic.so.0.0
? src/backend/utils/mb/conversion_procs/cyrillic_and_mic/libcyrillic_and_mic.so.0.0
? src/backend/utils/mb/conversion_procs/euc_cn_and_mic/libeuc_cn_and_mic.so.0.0
? src/backend/utils/mb/conversion_procs/euc_jp_and_sjis/libeuc_jp_and_sjis.so.0.0
? src/backend/utils/mb/conversion_procs/euc_kr_and_mic/libeuc_kr_and_mic.so.0.0
? src/backend/utils/mb/conversion_procs/euc_tw_and_big5/libeuc_tw_and_big5.so.0.0
? src/backend/utils/mb/conversion_procs/latin2_and_win1250/liblatin2_and_win1250.so.0.0
? src/backend/utils/mb/conversion_procs/latin_and_mic/liblatin_and_mic.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_ascii/libutf8_and_ascii.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_big5/libutf8_and_big5.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_cyrillic/libutf8_and_cyrillic.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_euc_cn/libutf8_and_euc_cn.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_euc_jp/libutf8_and_euc_jp.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_euc_kr/libutf8_and_euc_kr.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_euc_tw/libutf8_and_euc_tw.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_gb18030/libutf8_and_gb18030.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_gbk/libutf8_and_gbk.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_iso8859/libutf8_and_iso8859.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_iso8859_1/libutf8_and_iso8859_1.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_johab/libutf8_and_johab.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_sjis/libutf8_and_sjis.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_uhc/libutf8_and_uhc.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_win1250/libutf8_and_win1250.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_win1252/libutf8_and_win1252.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_win1256/libutf8_and_win1256.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_win1258/libutf8_and_win1258.so.0.0
? src/backend/utils/mb/conversion_procs/utf8_and_win874/libutf8_and_win874.so.0.0
? src/bin/initdb/initdb
? src/bin/initdb/po/cs.mo
? src/bin/initdb/po/de.mo
? src/bin/initdb/po/es.mo
? src/bin/initdb/po/fr.mo
? src/bin/initdb/po/it.mo
? src/bin/initdb/po/ko.mo
? src/bin/initdb/po/pl.mo
? src/bin/initdb/po/pt_BR.mo
? src/bin/initdb/po/ro.mo
? src/bin/initdb/po/ru.mo
? src/bin/initdb/po/sk.mo
? src/bin/initdb/po/sl.mo
? src/bin/initdb/po/sv.mo
? src/bin/initdb/po/tr.mo
? src/bin/initdb/po/zh_CN.mo
? src/bin/initdb/po/zh_TW.mo
? src/bin/ipcclean/ipcclean
? src/bin/pg_config/pg_config
? src/bin/pg_config/po/cs.mo
? src/bin/pg_config/po/de.mo
? src/bin/pg_config/po/es.mo
? src/bin/pg_config/po/fr.mo
? src/bin/pg_config/po/ko.mo
? src/bin/pg_config/po/pl.mo
? src/bin/pg_config/po/ro.mo
? src/bin/pg_config/po/pt_BR.mo
? src/bin/pg_config/po/ru.mo
? src/bin/pg_config/po/sl.mo
? src/bin/pg_config/po/sv.mo
? src/bin/pg_config/po/tr.mo
? src/bin/pg_config/po/zh_CN.mo
? src/bin/pg_config/po/zh_TW.mo
? src/bin/pg_controldata/pg_controldata
? src/bin/pg_controldata/po/cs.mo
? src/bin/pg_controldata/po/de.mo
? src/bin/pg_controldata/po/es.mo
? src/bin/pg_controldata/po/fa.mo
? src/bin/pg_controldata/po/fr.mo
? src/bin/pg_controldata/po/hu.mo
? src/bin/pg_controldata/po/it.mo
? src/bin/pg_controldata/po/ko.mo
? src/bin/pg_controldata/po/nb.mo
? src/bin/pg_controldata/po/pl.mo
? src/bin/pg_controldata/po/pt_BR.mo
? src/bin/pg_controldata/po/ro.mo
? src/bin/pg_controldata/po/ru.mo
? src/bin/pg_controldata/po/sk.mo
? src/bin/pg_controldata/po/sl.mo
? src/bin/pg_controldata/po/sv.mo
? src/bin/pg_controldata/po/tr.mo
? src/bin/pg_controldata/po/zh_CN.mo
? src/bin/pg_controldata/po/zh_TW.mo
? src/bin/pg_ctl/pg_ctl
? src/bin/pg_ctl/_xlk
? src/bin/pg_ctl/po/cs.mo
? src/bin/pg_ctl/po/de.mo
? src/bin/pg_ctl/po/es.mo
? src/bin/pg_ctl/po/fr.mo
? src/bin/pg_ctl/po/ko.mo
? src/bin/pg_ctl/po/pt_BR.mo
? src/bin/pg_ctl/po/ro.mo
? src/bin/pg_ctl/po/ru.mo
? src/bin/pg_ctl/po/sk.mo
? src/bin/pg_ctl/po/sl.mo
? src/bin/pg_ctl/po/sv.mo
? src/bin/pg_ctl/po/tr.mo
? src/bin/pg_ctl/po/zh_CN.mo
? src/bin/pg_ctl/po/zh_TW.mo
? src/bin/pg_dump/pg_dump
? src/bin/pg_dump/pg_restore
? src/bin/pg_dump/pg_dumpall
? src/bin/pg_dump/po/cs.mo
? src/bin/pg_dump/po/de.mo
? src/bin/pg_dump/po/es.mo
? src/bin/pg_dump/po/fr.mo
? src/bin/pg_dump/po/it.mo
? src/bin/pg_dump/po/ko.mo
? src/bin/pg_dump/po/nb.mo
? src/bin/pg_dump/po/pt_BR.mo
? src/bin/pg_dump/po/ro.mo
? src/bin/pg_dump/po/ru.mo
? src/bin/pg_dump/po/sk.mo
? src/bin/pg_dump/po/sl.mo
? src/bin/pg_dump/po/sv.mo
? src/bin/pg_dump/po/tr.mo
? src/bin/pg_dump/po/zh_CN.mo
? src/bin/pg_dump/po/zh_TW.mo
? src/bin/pg_resetxlog/pg_resetxlog
? src/bin/pg_resetxlog/po/cs.mo
? src/bin/pg_resetxlog/po/de.mo
? src/bin/pg_resetxlog/po/es.mo
? src/bin/pg_resetxlog/po/fr.mo
? src/bin/pg_resetxlog/po/hu.mo
? src/bin/pg_resetxlog/po/it.mo
? src/bin/pg_resetxlog/po/ko.mo
? src/bin/pg_resetxlog/po/nb.mo
? src/bin/pg_resetxlog/po/pt_BR.mo
? src/bin/pg_resetxlog/po/ro.mo
? src/bin/pg_resetxlog/po/ru.mo
? src/bin/pg_resetxlog/po/sk.mo
? src/bin/pg_resetxlog/po/sl.mo
? src/bin/pg_resetxlog/po/sv.mo
? src/bin/pg_resetxlog/po/tr.mo
? src/bin/pg_resetxlog/po/zh_CN.mo
? src/bin/pg_resetxlog/po/zh_TW.mo
? src/bin/psql/psql
? src/bin/psql/po/cs.mo
? src/bin/psql/po/de.mo
? src/bin/psql/po/es.mo
? src/bin/psql/po/fa.mo
? src/bin/psql/po/fr.mo
? src/bin/psql/po/hu.mo
? src/bin/psql/po/it.mo
? src/bin/psql/po/ko.mo
? src/bin/psql/po/nb.mo
? src/bin/psql/po/ro.mo
? src/bin/psql/po/pt_BR.mo
? src/bin/psql/po/ru.mo
? src/bin/psql/po/sk.mo
? src/bin/psql/po/sl.mo
? src/bin/psql/po/sv.mo
? src/bin/psql/po/tr.mo
? src/bin/psql/po/zh_CN.mo
? src/bin/psql/po/zh_TW.mo
? src/bin/scripts/createdb
? src/bin/scripts/createlang
? src/bin/scripts/createuser
? src/bin/scripts/dropdb
? src/bin/scripts/droplang
? src/bin/scripts/dropuser
? src/bin/scripts/clusterdb
? src/bin/scripts/vacuumdb
? src/bin/scripts/po/cs.mo
? src/bin/scripts/po/de.mo
? src/bin/scripts/po/es.mo
? src/bin/scripts/po/fr.mo
? src/bin/scripts/po/it.mo
? src/bin/scripts/po/ko.mo
? src/bin/scripts/po/pt_BR.mo
? src/bin/scripts/po/ro.mo
? src/bin/scripts/po/ru.mo
? src/bin/scripts/po/sk.mo
? src/bin/scripts/po/sl.mo
? src/bin/scripts/po/sv.mo
? src/bin/scripts/po/tr.mo
? src/bin/scripts/po/zh_CN.mo
? src/bin/scripts/po/zh_TW.mo
? src/include/pg_config.h
? src/include/stamp-h
? src/include/port/_xlk
? src/interfaces/ecpg/compatlib/libecpg_compat.so.2.1
? src/interfaces/ecpg/ecpglib/libecpg.so.5.1
? src/interfaces/ecpg/pgtypeslib/libpgtypes.so.2.1
? src/interfaces/ecpg/preproc/ecpg
? src/interfaces/libpq/MAKE0002.@@@
? src/interfaces/libpq/MAKE0003.@@@
? src/interfaces/libpq/MAKE0004.@@@
? src/interfaces/libpq/MAKE0005.@@@
? src/interfaces/libpq/MAKE0006.@@@
? src/interfaces/libpq/MAKE0007.@@@
? src/interfaces/libpq/MAKE0008.@@@
? src/interfaces/libpq/MAKE0009.@@@
? src/interfaces/libpq/MAKE0010.@@@
? src/interfaces/libpq/MAKE0011.@@@
? src/interfaces/libpq/MAKE0001.@@@
? src/interfaces/libpq/MAKE0000.@@@
? src/interfaces/libpq/Release
? src/interfaces/libpq/libpq.so.4.1
? src/interfaces/libpq/po/af.mo
? src/interfaces/libpq/po/cs.mo
? src/interfaces/libpq/po/de.mo
? src/interfaces/libpq/po/es.mo
? src/interfaces/libpq/po/fr.mo
? src/interfaces/libpq/po/hr.mo
? src/interfaces/libpq/po/it.mo
? src/interfaces/libpq/po/ko.mo
? src/interfaces/libpq/po/nb.mo
? src/interfaces/libpq/po/pl.mo
? src/interfaces/libpq/po/pt_BR.mo
? src/interfaces/libpq/po/ru.mo
? src/interfaces/libpq/po/sk.mo
? src/interfaces/libpq/po/sl.mo
? src/interfaces/libpq/po/sv.mo
? src/interfaces/libpq/po/tr.mo
? src/interfaces/libpq/po/zh_CN.mo
? src/interfaces/libpq/po/zh_TW.mo
? src/pl/plperl/SPI.c
? src/pl/plperl/libplperl.so.0.0
? src/pl/plpgsql/src/libplpgsql.so.1.0
? src/pl/tcl/libpltcl.so.2.0
? src/pl/tcl/modules/pltcl_loadmod
? src/pl/tcl/modules/pltcl_delmod
? src/pl/tcl/modules/pltcl_listmod
? src/port/pg_config_paths.h
? src/port/_xlk
? src/test/regress/pg_regress
? src/test/regress/testtablespace
? src/test/regress/log
? src/test/regress/results
? src/test/regress/expected/copy.out
? src/test/regress/expected/create_function_1.out
? src/test/regress/expected/create_function_2.out
? src/test/regress/expected/misc.out
? src/test/regress/expected/constraints.out
? src/test/regress/expected/tablespace.out
? src/test/regress/sql/copy.sql
? src/test/regress/sql/create_function_1.sql
? src/test/regress/sql/create_function_2.sql
? src/test/regress/sql/misc.sql
? src/test/regress/sql/constraints.sql
? src/test/regress/sql/tablespace.sql
? src/timezone/zic
Index: contrib/intarray/_int_bool.c
===================================================================
RCS file: /cvsroot/pgsql/contrib/intarray/_int_bool.c,v
retrieving revision 1.3
diff -r1.3 _int_bool.c
469c469
< #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 ) { \
Index: contrib/ltree/crc32.c
===================================================================
RCS file: /cvsroot/pgsql/contrib/ltree/crc32.c,v
retrieving revision 1.4
diff -r1.4 crc32.c
23c23
< #define _CRC32_(crc, ch)     (crc = (crc >> 8) ^ crc32tab[(crc ^ (ch)) & 0xff])
---
> #define _CRC32_(crc, ch)     ((crc) = ((crc) >> 8) ^ crc32tab[((crc) ^ (ch)) & 0xff])
Index: contrib/ltree/ltree.h
===================================================================
RCS file: /cvsroot/pgsql/contrib/ltree/ltree.h,v
retrieving revision 1.10
diff -r1.10 ltree.h
112c112
< #define COMPUTESIZE(size,lenofoperand)    ( HDRSIZEQT + size * sizeof(ITEM) + lenofoperand )
---
> #define COMPUTESIZE(size,lenofoperand)    ( HDRSIZEQT + (size) * sizeof(ITEM) + (lenofoperand) )
Index: contrib/ltree/ltxtquery_io.c
===================================================================
RCS file: /cvsroot/pgsql/contrib/ltree/ltxtquery_io.c,v
retrieving revision 1.6
diff -r1.6 ltxtquery_io.c
389c389
< while( ( inf->cur - inf->buf ) + addsize + 1 >= inf->buflen ) \
---
> while( ( (inf)->cur - (inf)->buf ) + (addsize) + 1 >= (inf)->buflen ) \
391,394c391,394
<     int4 len = inf->cur - inf->buf; \
<     inf->buflen *= 2; \
<     inf->buf = (char*) repalloc( (void*)inf->buf, inf->buflen ); \
<     inf->cur = inf->buf + len; \
---
>     int4 len = (inf)->cur - (inf)->buf; \
>     (inf)->buflen *= 2; \
>     (inf)->buf = (char*) repalloc( (void*)(inf)->buf, (inf)->buflen ); \
>     (inf)->cur = (inf)->buf + len; \
Index: contrib/pgcrypto/crypt-blowfish.c
===================================================================
RCS file: /cvsroot/pgsql/contrib/pgcrypto/crypt-blowfish.c,v
retrieving revision 1.8
diff -r1.8 crypt-blowfish.c
455,456c455,456
<     tmp1 = L & 0xFF; \
<     tmp2 = L >> 8; \
---
>     tmp1 = (L) & 0xFF; \
>     tmp2 = (L) >> 8; \
458c458
<     tmp3 = L >> 16; \
---
>     tmp3 = (L) >> 16; \
460c460
<     tmp4 = L >> 24; \
---
>     tmp4 = (L) >> 24; \
466c466
<     R ^= data.ctx.P[N + 1]; \
---
>     (R) ^= data.ctx.P[(N) + 1]; \
468c468
<     R ^= tmp3;
---
>     (R) ^= tmp3;
472c472
<     (*((BF_word *)(((unsigned char *)S) + (i))))
---
>     (*((BF_word *)(((unsigned char *)(S)) + (i))))
474c474
<     tmp1 = L & 0xFF; \
---
>     tmp1 = (L) & 0xFF; \
476c476
<     tmp2 = L >> 6; \
---
>     tmp2 = (L) >> 6; \
478c478
<     tmp3 = L >> 14; \
---
>     tmp3 = (L) >> 14; \
480c480
<     tmp4 = L >> 22; \
---
>     tmp4 = (L) >> 22; \
487c487
<     R ^= data.ctx.P[N + 1]; \
---
>     (R) ^= data.ctx.P[(N) + 1]; \
489c489
<     R ^= tmp3;
---
>     (R) ^= tmp3;
Index: contrib/pgcrypto/rijndael.c
===================================================================
RCS file: /cvsroot/pgsql/contrib/pgcrypto/rijndael.c,v
retrieving revision 1.9
diff -r1.9 rijndael.c
60c60
< #define bswap(x)    ((rotl(x, 8) & 0x00ff00ff) | (rotr(x, 8) & 0xff00ff00))
---
> #define bswap(x)    ((rotl((x), 8) & 0x00ff00ff) | (rotr((x), 8) & 0xff00ff00))
64c64
< #define byte(x,n)    ((u1byte)((x) >> (8 * n)))
---
> #define byte(x,n)    ((u1byte)((x) >> (8 * (n))))
103c103
< #define ff_mult(a,b)    (a && b ? pow_tab[(log_tab[a] + log_tab[b]) % 255] : 0)
---
> #define ff_mult(a,b)    ((a) && (b) ? pow_tab[(log_tab[a] + log_tab[b]) % 255] : 0)
105,109c105,109
< #define f_rn(bo, bi, n, k)                            \
<     bo[n] =  ft_tab[0][byte(bi[n],0)] ^                \
<              ft_tab[1][byte(bi[(n + 1) & 3],1)] ^    \
<              ft_tab[2][byte(bi[(n + 2) & 3],2)] ^    \
<              ft_tab[3][byte(bi[(n + 3) & 3],3)] ^ *(k + n)
---
> #define f_rn(bo, bi, n, k)                                \
>     (bo)[n] =  ft_tab[0][byte((bi)[n],0)] ^                \
>              ft_tab[1][byte((bi)[((n) + 1) & 3],1)] ^    \
>              ft_tab[2][byte((bi)[((n) + 2) & 3],2)] ^    \
>              ft_tab[3][byte((bi)[((n) + 3) & 3],3)] ^ *((k) + (n))
112,115c112,115
<     bo[n] =  it_tab[0][byte(bi[n],0)] ^                \
<              it_tab[1][byte(bi[(n + 3) & 3],1)] ^    \
<              it_tab[2][byte(bi[(n + 2) & 3],2)] ^    \
<              it_tab[3][byte(bi[(n + 1) & 3],3)] ^ *(k + n)
---
>     (bo)[n] =  it_tab[0][byte((bi)[n],0)] ^                \
>              it_tab[1][byte((bi)[((n) + 3) & 3],1)] ^    \
>              it_tab[2][byte((bi)[((n) + 2) & 3],2)] ^    \
>              it_tab[3][byte((bi)[((n) + 1) & 3],3)] ^ *((k) + (n))
125,135c125,135
< #define f_rl(bo, bi, n, k)                            \
<     bo[n] =  fl_tab[0][byte(bi[n],0)] ^                \
<              fl_tab[1][byte(bi[(n + 1) & 3],1)] ^    \
<              fl_tab[2][byte(bi[(n + 2) & 3],2)] ^    \
<              fl_tab[3][byte(bi[(n + 3) & 3],3)] ^ *(k + n)
<
< #define i_rl(bo, bi, n, k)                            \
<     bo[n] =  il_tab[0][byte(bi[n],0)] ^                \
<              il_tab[1][byte(bi[(n + 3) & 3],1)] ^    \
<              il_tab[2][byte(bi[(n + 2) & 3],2)] ^    \
<              il_tab[3][byte(bi[(n + 1) & 3],3)] ^ *(k + n)
---
> #define f_rl(bo, bi, n, k)                                \
>     (bo)[n] =  fl_tab[0][byte((bi)[n],0)] ^                \
>              fl_tab[1][byte((bi)[((n) + 1) & 3],1)] ^    \
>              fl_tab[2][byte((bi)[((n) + 2) & 3],2)] ^    \
>              fl_tab[3][byte((bi)[((n) + 3) & 3],3)] ^ *((k) + (n))
>
> #define i_rl(bo, bi, n, k)                                \
>     (bo)[n] =  il_tab[0][byte((bi)[n],0)] ^                \
>              il_tab[1][byte((bi)[((n) + 3) & 3],1)] ^    \
>              il_tab[2][byte((bi)[((n) + 2) & 3],2)] ^    \
>              il_tab[3][byte((bi)[((n) + 1) & 3],3)] ^ *((k) + (n))
145,155c145,155
< #define f_rl(bo, bi, n, k)                                        \
<     bo[n] = (u4byte)sbx_tab[byte(bi[n],0)] ^                    \
<         rotl(((u4byte)sbx_tab[byte(bi[(n + 1) & 3],1)]),  8) ^    \
<         rotl(((u4byte)sbx_tab[byte(bi[(n + 2) & 3],2)]), 16) ^    \
<         rotl(((u4byte)sbx_tab[byte(bi[(n + 3) & 3],3)]), 24) ^ *(k + n)
<
< #define i_rl(bo, bi, n, k)                                        \
<     bo[n] = (u4byte)isb_tab[byte(bi[n],0)] ^                    \
<         rotl(((u4byte)isb_tab[byte(bi[(n + 3) & 3],1)]),  8) ^    \
<         rotl(((u4byte)isb_tab[byte(bi[(n + 2) & 3],2)]), 16) ^    \
<         rotl(((u4byte)isb_tab[byte(bi[(n + 1) & 3],3)]), 24) ^ *(k + n)
---
> #define f_rl(bo, bi, n, k)                                            \
>     (bo)[n] = (u4byte)sbx_tab[byte((bi)[n],0)] ^                    \
>         rotl(((u4byte)sbx_tab[byte((bi)[((n) + 1) & 3],1)]),  8) ^    \
>         rotl(((u4byte)sbx_tab[byte((bi)[((n) + 2) & 3],2)]), 16) ^    \
>         rotl(((u4byte)sbx_tab[byte((bi)[((n) + 3) & 3],3)]), 24) ^ *((k) + (n))
>
> #define i_rl(bo, bi, n, k)                                            \
>     (bo)[n] = (u4byte)isb_tab[byte((bi)[n],0)] ^                    \
>         rotl(((u4byte)isb_tab[byte((bi)[((n) + 3) & 3],1)]),  8) ^    \
>         rotl(((u4byte)isb_tab[byte((bi)[((n) + 2) & 3],2)]), 16) ^    \
>         rotl(((u4byte)isb_tab[byte((bi)[((n) + 1) & 3],3)]), 24) ^ *((k) + (n))
285,290c285,290
<     t ^= e_key[6 * i];       e_key[6 * i + 6] = t;    \
<     t ^= e_key[6 * i + 1]; e_key[6 * i + 7] = t;    \
<     t ^= e_key[6 * i + 2]; e_key[6 * i + 8] = t;    \
<     t ^= e_key[6 * i + 3]; e_key[6 * i + 9] = t;    \
<     t ^= e_key[6 * i + 4]; e_key[6 * i + 10] = t;    \
<     t ^= e_key[6 * i + 5]; e_key[6 * i + 11] = t;    \
---
>     t ^= e_key[6 * (i)];       e_key[6 * (i) + 6] = t;    \
>     t ^= e_key[6 * (i) + 1]; e_key[6 * (i) + 7] = t;    \
>     t ^= e_key[6 * (i) + 2]; e_key[6 * (i) + 8] = t;    \
>     t ^= e_key[6 * (i) + 3]; e_key[6 * (i) + 9] = t;    \
>     t ^= e_key[6 * (i) + 4]; e_key[6 * (i) + 10] = t;    \
>     t ^= e_key[6 * (i) + 5]; e_key[6 * (i) + 11] = t;    \
295,303c295,303
<     t ^= e_key[8 * i];       e_key[8 * i + 8] = t;    \
<     t ^= e_key[8 * i + 1]; e_key[8 * i + 9] = t;    \
<     t ^= e_key[8 * i + 2]; e_key[8 * i + 10] = t;    \
<     t ^= e_key[8 * i + 3]; e_key[8 * i + 11] = t;    \
<     t  = e_key[8 * i + 4] ^ ls_box(t);                \
<     e_key[8 * i + 12] = t;                            \
<     t ^= e_key[8 * i + 5]; e_key[8 * i + 13] = t;    \
<     t ^= e_key[8 * i + 6]; e_key[8 * i + 14] = t;    \
<     t ^= e_key[8 * i + 7]; e_key[8 * i + 15] = t;    \
---
>     t ^= e_key[8 * (i)];     e_key[8 * (i) + 8] = t;    \
>     t ^= e_key[8 * (i) + 1]; e_key[8 * (i) + 9] = t;    \
>     t ^= e_key[8 * (i) + 2]; e_key[8 * (i) + 10] = t;    \
>     t ^= e_key[8 * (i) + 3]; e_key[8 * (i) + 11] = t;    \
>     t  = e_key[8 * (i) + 4] ^ ls_box(t);                \
>     e_key[8 * (i) + 12] = t;                            \
>     t ^= e_key[8 * (i) + 5]; e_key[8 * (i) + 13] = t;    \
>     t ^= e_key[8 * (i) + 6]; e_key[8 * (i) + 14] = t;    \
>     t ^= e_key[8 * (i) + 7]; e_key[8 * (i) + 15] = t;    \
Index: contrib/pgcrypto/sha1.c
===================================================================
RCS file: /cvsroot/pgsql/contrib/pgcrypto/sha1.c,v
retrieving revision 1.14
diff -r1.14 sha1.c
62c62
< #define S(n, x)        (((x) << (n)) | ((x) >> (32 - n)))
---
> #define S(n, x)        (((x) << (n)) | ((x) >> (32 - (n))))
Index: contrib/rtree_gist/rtree_gist.c
===================================================================
RCS file: /cvsroot/pgsql/contrib/rtree_gist/rtree_gist.c,v
retrieving revision 1.11
diff -r1.11 rtree_gist.c
279,282c279,282
<         if ( unionD->high.x < cur->high.x ) unionD->high.x    = cur->high.x; \
<         if ( unionD->low.x    > cur->low.x  ) unionD->low.x    = cur->low.x; \
<         if ( unionD->high.y < cur->high.y ) unionD->high.y    = cur->high.y; \
<         if ( unionD->low.y    > cur->low.y  ) unionD->low.y    = cur->low.y; \
---
>         if ( (unionD)->high.x < cur->high.x ) (unionD)->high.x    = cur->high.x; \
>         if ( (unionD)->low.x  > cur->low.x  ) (unionD)->low.x    = cur->low.x; \
>         if ( (unionD)->high.y < cur->high.y ) (unionD)->high.y    = cur->high.y; \
>         if ( (unionD)->low.y  > cur->low.y  ) (unionD)->low.y    = cur->low.y; \
284c284
<             memcpy( (void*)unionD, (void*) cur, sizeof( BOX ) );  \
---
>             memcpy( (void*)(unionD), (void*) cur, sizeof( BOX ) );  \
286c286
<     list[pos] = num; \
---
>     (list)[pos] = num; \
Index: contrib/tsearch/crc32.c
===================================================================
RCS file: /cvsroot/pgsql/contrib/tsearch/crc32.c,v
retrieving revision 1.2
diff -r1.2 crc32.c
16c16
< #define _CRC32_(crc, ch)     (crc = (crc >> 8) ^ crc32tab[(crc ^ (ch)) & 0xff])
---
> #define _CRC32_(crc, ch)     ((crc) = ((crc) >> 8) ^ crc32tab[((crc) ^ (ch)) & 0xff])
Index: contrib/tsearch/gistidx.h
===================================================================
RCS file: /cvsroot/pgsql/contrib/tsearch/gistidx.h,v
retrieving revision 1.6
diff -r1.6 gistidx.h
30c30
< #define GETBITBYTE(x,i) ( ((char)(x)) >> i & 0x01 )
---
> #define GETBITBYTE(x,i) ( ((char)(x)) >> (i) & 0x01 )
53,55c53,55
< #define ISARRKEY(x) ( ((GISTTYPE*)x)->flag & ARRKEY )
< #define ISSIGNKEY(x)    ( ((GISTTYPE*)x)->flag & SIGNKEY )
< #define ISALLTRUE(x)    ( ((GISTTYPE*)x)->flag & ALLISTRUE )
---
> #define ISARRKEY(x) ( ((GISTTYPE*)(x))->flag & ARRKEY )
> #define ISSIGNKEY(x)    ( ((GISTTYPE*)(x))->flag & SIGNKEY )
> #define ISALLTRUE(x)    ( ((GISTTYPE*)(x))->flag & ALLISTRUE )
57c57
< #define GTHDRSIZE    ( sizeof(int4)*2  )
---
> #define GTHDRSIZE    ( sizeof(int4)* 2  )
60,62c60,62
< #define GETSIGN(x)    ( (BITVECP)( (char*)x+GTHDRSIZE ) )
< #define GETARR(x)    ( (int4*)( (char*)x+GTHDRSIZE ) )
< #define ARRNELEM(x) ( ( ((GISTTYPE*)x)->len - GTHDRSIZE )/sizeof(int4) )
---
> #define GETSIGN(x)    ( (BITVECP)( (char*)(x) + GTHDRSIZE ) )
> #define GETARR(x)    ( (int4*)( (char*)(x) + GTHDRSIZE ) )
> #define ARRNELEM(x) ( ( ((GISTTYPE*)(x))->len - GTHDRSIZE ) / sizeof(int4) )
Index: contrib/tsearch/query.c
===================================================================
RCS file: /cvsroot/pgsql/contrib/tsearch/query.c,v
retrieving revision 1.16
diff -r1.16 query.c
661c661
< while( ( inf->cur - inf->buf ) + addsize + 1 >= inf->buflen ) \
---
> while( ( (inf)->cur - (inf)->buf ) + (addsize) + 1 >= (inf)->buflen ) \
663,666c663,666
<     int4 len = inf->cur - inf->buf; \
<     inf->buflen *= 2; \
<     inf->buf = (char*) repalloc( (void*)inf->buf, inf->buflen ); \
<     inf->cur = inf->buf + len; \
---
>     int4 len = (inf)->cur - (inf)->buf; \
>     (inf)->buflen *= 2; \
>     (inf)->buf = (char*) repalloc( (void*)(inf)->buf, (inf)->buflen ); \
>     (inf)->cur = (inf)->buf + len; \
Index: contrib/tsearch/query.h
===================================================================
RCS file: /cvsroot/pgsql/contrib/tsearch/query.h,v
retrieving revision 1.4
diff -r1.4 query.h
34c34
< #define COMPUTESIZE(size,lenofoperand)    ( HDRSIZEQT + size * sizeof(ITEM) + lenofoperand )
---
> #define COMPUTESIZE(size, lenofoperand)    ( HDRSIZEQT + (size) * sizeof(ITEM) + (lenofoperand) )
36c36
< #define GETOPERAND(x)    ( (char*)GETQUERY(x) + ((QUERYTYPE*)x)->size * sizeof(ITEM) )
---
> #define GETOPERAND(x)    ( (char*)GETQUERY(x) + ((QUERYTYPE*)(x))->size * sizeof(ITEM) )
Index: contrib/tsearch2/crc32.c
===================================================================
RCS file: /cvsroot/pgsql/contrib/tsearch2/crc32.c,v
retrieving revision 1.1
diff -r1.1 crc32.c
16c16
< #define _CRC32_(crc, ch)     (crc = (crc >> 8) ^ crc32tab[(crc ^ (ch)) & 0xff])
---
> #define _CRC32_(crc, ch)     ((crc) = ((crc) >> 8) ^ crc32tab[((crc) ^ (ch)) & 0xff])
Index: contrib/tsearch2/gistidx.h
===================================================================
RCS file: /cvsroot/pgsql/contrib/tsearch2/gistidx.h,v
retrieving revision 1.2
diff -r1.2 gistidx.h
15,16c15,16
< #define SIGLEN    ( sizeof(int4)*SIGLENINT )
< #define SIGLENBIT (SIGLEN*BITBYTE)
---
> #define SIGLEN    ( sizeof(int4) * SIGLENINT )
> #define SIGLENBIT (SIGLEN * BITBYTE)
31c31
< #define GETBITBYTE(x,i) ( ((char)(x)) >> i & 0x01 )
---
> #define GETBITBYTE(x,i) ( ((char)(x)) >> (i) & 0x01 )
54,56c54,56
< #define ISARRKEY(x) ( ((GISTTYPE*)x)->flag & ARRKEY )
< #define ISSIGNKEY(x)    ( ((GISTTYPE*)x)->flag & SIGNKEY )
< #define ISALLTRUE(x)    ( ((GISTTYPE*)x)->flag & ALLISTRUE )
---
> #define ISARRKEY(x) ( ((GISTTYPE*)(x))->flag & ARRKEY )
> #define ISSIGNKEY(x)    ( ((GISTTYPE*)(x))->flag & SIGNKEY )
> #define ISALLTRUE(x)    ( ((GISTTYPE*)(x))->flag & ALLISTRUE )
58c58
< #define GTHDRSIZE    ( sizeof(int4)*2  )
---
> #define GTHDRSIZE    ( sizeof(int4) * 2  )
61,63c61,63
< #define GETSIGN(x)    ( (BITVECP)( (char*)x+GTHDRSIZE ) )
< #define GETARR(x)    ( (int4*)( (char*)x+GTHDRSIZE ) )
< #define ARRNELEM(x) ( ( ((GISTTYPE*)x)->len - GTHDRSIZE )/sizeof(int4) )
---
> #define GETSIGN(x)    ( (BITVECP)( (char*)(x)+GTHDRSIZE ) )
> #define GETARR(x)    ( (int4*)( (char*)(x)+GTHDRSIZE ) )
> #define ARRNELEM(x) ( ( ((GISTTYPE*)(x))->len - GTHDRSIZE )/sizeof(int4) )
Index: contrib/tsearch2/query.c
===================================================================
RCS file: /cvsroot/pgsql/contrib/tsearch2/query.c,v
retrieving revision 1.13
diff -r1.13 query.c
683c683
< while( ( inf->cur - inf->buf ) + addsize + 1 >= inf->buflen ) \
---
> while( ( (inf)->cur - (inf)->buf ) + (addsize) + 1 >= (inf)->buflen ) \
685,688c685,688
<     int4 len = inf->cur - inf->buf; \
<     inf->buflen *= 2; \
<     inf->buf = (char*) repalloc( (void*)inf->buf, inf->buflen ); \
<     inf->cur = inf->buf + len; \
---
>     int4 len = (inf)->cur - (inf)->buf; \
>     (inf)->buflen *= 2; \
>     (inf)->buf = (char*) repalloc( (void*)(inf)->buf, (inf)->buflen ); \
>     (inf)->cur = (inf)->buf + len; \
Index: contrib/tsearch2/query.h
===================================================================
RCS file: /cvsroot/pgsql/contrib/tsearch2/query.h,v
retrieving revision 1.3
diff -r1.3 query.h
36,37c36,37
< #define HDRSIZEQT    ( 2*sizeof(int4) )
< #define COMPUTESIZE(size,lenofoperand)    ( HDRSIZEQT + size * sizeof(ITEM) + lenofoperand )
---
> #define HDRSIZEQT    ( 2 * sizeof(int4) )
> #define COMPUTESIZE(size,lenofoperand)    ( HDRSIZEQT + (size) * sizeof(ITEM) + (lenofoperand) )
39c39
< #define GETOPERAND(x)    ( (char*)GETQUERY(x) + ((QUERYTYPE*)x)->size * sizeof(ITEM) )
---
> #define GETOPERAND(x)    ( (char*)GETQUERY(x) + ((QUERYTYPE*)(x))->size * sizeof(ITEM) )
Index: contrib/tsearch2/ts_stat.h
===================================================================
RCS file: /cvsroot/pgsql/contrib/tsearch2/ts_stat.h,v
retrieving revision 1.4
diff -r1.4 ts_stat.h
27,31c27,31
< #define STATHDRSIZE (sizeof(int4)*4)
< #define CALCSTATSIZE(x, lenstr) ( x * sizeof(StatEntry) + STATHDRSIZE + lenstr )
< #define STATPTR(x)    ( (StatEntry*) ( (char*)x + STATHDRSIZE ) )
< #define STATSTRPTR(x)    ( (char*)x + STATHDRSIZE + ( sizeof(StatEntry) * ((tsvector*)x)->size ) )
< #define STATSTRSIZE(x)    ( ((tsvector*)x)->len - STATHDRSIZE - ( sizeof(StatEntry) * ((tsvector*)x)->size ) )
---
> #define STATHDRSIZE (sizeof(int4) * 4)
> #define CALCSTATSIZE(x, lenstr) ( (x) * sizeof(StatEntry) + STATHDRSIZE + (lenstr) )
> #define STATPTR(x)    ( (StatEntry*) ( (char*)(x) + STATHDRSIZE ) )
> #define STATSTRPTR(x)    ( (char*)(x) + STATHDRSIZE + ( sizeof(StatEntry) * ((tsvector*)(x))->size ) )
> #define STATSTRSIZE(x)    ( ((tsvector*)(x))->len - STATHDRSIZE - ( sizeof(StatEntry) * ((tsvector*)(x))->size ) )
Index: contrib/tsearch2/tsvector.h
===================================================================
RCS file: /cvsroot/pgsql/contrib/tsearch2/tsvector.h,v
retrieving revision 1.4
diff -r1.4 tsvector.h
40c40
< #define  WEP_GETPOS(x)    ( (x) & 0x3fff )
---
> #define  WEP_GETPOS(x)        ( (x) & 0x3fff )
57,61c57,61
< #define DATAHDRSIZE (sizeof(int4)*2)
< #define CALCDATASIZE(x, lenstr) ( x * sizeof(WordEntry) + DATAHDRSIZE + lenstr )
< #define ARRPTR(x)    ( (WordEntry*) ( (char*)x + DATAHDRSIZE ) )
< #define STRPTR(x)    ( (char*)x + DATAHDRSIZE + ( sizeof(WordEntry) * ((tsvector*)x)->size ) )
< #define STRSIZE(x)    ( ((tsvector*)x)->len - DATAHDRSIZE - ( sizeof(WordEntry) * ((tsvector*)x)->size ) )
---
> #define DATAHDRSIZE (sizeof(int4) * 2)
> #define CALCDATASIZE(x, lenstr) ( (x) * sizeof(WordEntry) + DATAHDRSIZE + (lenstr) )
> #define ARRPTR(x)    ( (WordEntry*) ( (char*)(x) + DATAHDRSIZE ) )
> #define STRPTR(x)    ( (char*)(x) + DATAHDRSIZE + ( sizeof(WordEntry) * ((tsvector*)(x))->size ) )
> #define STRSIZE(x)    ( ((tsvector*)(x))->len - DATAHDRSIZE - ( sizeof(WordEntry) * ((tsvector*)(x))->size ) )
Index: src/backend/access/hash/hashfunc.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/access/hash/hashfunc.c,v
retrieving revision 1.43
diff -r1.43 hashfunc.c
195,203c195,203
<   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); \
Index: src/backend/regex/regcomp.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/regex/regcomp.c,v
retrieving revision 1.42
diff -r1.42 regcomp.c
235c235
< #define  ISCELEADER(v,c) (v->mcces != NULL && haschr(v->mcces, (c)))
---
> #define  ISCELEADER(v,c) ((v)->mcces != NULL && haschr((v)->mcces, (c)))
Index: src/backend/utils/adt/formatting.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/utils/adt/formatting.c,v
retrieving revision 1.86
diff -r1.86 formatting.c
174c174
< #define YEAR_ABS(_y)    (_y <= 0 ? -(_y -1) : _y)
---
> #define YEAR_ABS(_y)    ((_y) <= 0 ? -((_y) - 1) : _y)
283c283
< #define NUM_F_ZERO        (1 << 3)
---
> #define NUM_F_ZERO            (1 << 3)
289c289
< #define NUM_F_PLUS        (1 << 9)
---
> #define NUM_F_PLUS            (1 << 9)
291c291
< #define NUM_F_MULTI        (1 << 11)
---
> #define NUM_F_MULTI            (1 << 11)
460,463c460,463
< #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)
465,466c465,466
< #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)
Index: src/backend/utils/adt/pg_lzcompress.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/utils/adt/pg_lzcompress.c,v
retrieving revision 1.18
diff -r1.18 pg_lzcompress.c
331,332c331,332
<         *__ctrlp = __ctrlb;                                                    \
<         __ctrlp = __buf++;                                                    \
---
>         *(__ctrlp) = __ctrlb;                                                \
>         __ctrlp = (__buf)++;                                                \
349c349
<     *_buf++ = (unsigned char)(_byte);                                        \
---
>     *(_buf)++ = (unsigned char)(_byte);                                        \
369,372c369,372
<         _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;                                                        \
374,376c374,376
<         _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;                                                        \
Index: src/backend/utils/sort/tuplesort.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/utils/sort/tuplesort.c,v
retrieving revision 1.48
diff -r1.48 tuplesort.c
1567c1567
<     (checkIndex && (index1 != index2) ? index1 - index2 : \
---
>     (checkIndex && (index1 != index2) ? (index1) - (index2) : \
Index: src/bin/pg_dump/pg_backup_archiver.h
===================================================================
RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_backup_archiver.h,v
retrieving revision 1.63
diff -r1.63 pg_backup_archiver.h
46,47c46,47
< #define GZWRITE(p, s, n, fh) gzwrite(fh, p, n * s)
< #define GZREAD(p, s, n, fh) gzread(fh, p, n * s)
---
> #define GZWRITE(p, s, n, fh) gzwrite(fh, p, (n) * (s))
> #define GZREAD(p, s, n, fh) gzread(fh, p, (n) * (s))
50c50
< #define GZWRITE(p, s, n, fh) (fwrite(p, s, n, fh) * s)
---
> #define GZWRITE(p, s, n, fh) (fwrite(p, s, n, fh) * (s))
Index: src/include/c.h
===================================================================
RCS file: /cvsroot/pgsql/src/include/c.h,v
retrieving revision 1.183
diff -r1.183 c.h
538c538
< #define endof(array)    (&array[lengthof(array)])
---
> #define endof(array)    (&(array)[lengthof(array)])
552c552
<     (((long) (LEN) + (ALIGNVAL-1)) & ~((long) (ALIGNVAL-1)))
---
>     (((long) (LEN) + ((ALIGNVAL) - 1)) & ~((long) ((ALIGNVAL) - 1)))
Index: src/include/port.h
===================================================================
RCS file: /cvsroot/pgsql/src/include/port.h,v
retrieving revision 1.74
diff -r1.74 port.h
258,259c258,259
< #define fseeko(a, b, c) fseek((a), (b), (c))
< #define ftello(a) ftell((a))
---
> #define fseeko(a, b, c) fseek(a, b, c)
> #define ftello(a)        ftell(a)
Index: src/include/access/attnum.h
===================================================================
RCS file: /cvsroot/pgsql/src/include/access/attnum.h,v
retrieving revision 1.20
diff -r1.20 attnum.h
61c61
<      ((AttrNumber) (1 + attributeOffset))
---
>      ((AttrNumber) (1 + (attributeOffset)))
Index: src/include/catalog/pg_trigger.h
===================================================================
RCS file: /cvsroot/pgsql/src/include/catalog/pg_trigger.h,v
retrieving revision 1.22
diff -r1.22 pg_trigger.h
84c84
< #define TRIGGER_CLEAR_TYPE(type)        (type = 0)
---
> #define TRIGGER_CLEAR_TYPE(type)        ((type) = 0)
86,90c86,90
< #define TRIGGER_SETT_ROW(type)            (type |= TRIGGER_TYPE_ROW)
< #define TRIGGER_SETT_BEFORE(type)        (type |= TRIGGER_TYPE_BEFORE)
< #define TRIGGER_SETT_INSERT(type)        (type |= TRIGGER_TYPE_INSERT)
< #define TRIGGER_SETT_DELETE(type)        (type |= TRIGGER_TYPE_DELETE)
< #define TRIGGER_SETT_UPDATE(type)        (type |= TRIGGER_TYPE_UPDATE)
---
> #define TRIGGER_SETT_ROW(type)            ((type) |= TRIGGER_TYPE_ROW)
> #define TRIGGER_SETT_BEFORE(type)        ((type) |= TRIGGER_TYPE_BEFORE)
> #define TRIGGER_SETT_INSERT(type)        ((type) |= TRIGGER_TYPE_INSERT)
> #define TRIGGER_SETT_DELETE(type)        ((type) |= TRIGGER_TYPE_DELETE)
> #define TRIGGER_SETT_UPDATE(type)        ((type) |= TRIGGER_TYPE_UPDATE)
92,96c92,96
< #define TRIGGER_FOR_ROW(type)            (type & TRIGGER_TYPE_ROW)
< #define TRIGGER_FOR_BEFORE(type)        (type & TRIGGER_TYPE_BEFORE)
< #define TRIGGER_FOR_INSERT(type)        (type & TRIGGER_TYPE_INSERT)
< #define TRIGGER_FOR_DELETE(type)        (type & TRIGGER_TYPE_DELETE)
< #define TRIGGER_FOR_UPDATE(type)        (type & TRIGGER_TYPE_UPDATE)
---
> #define TRIGGER_FOR_ROW(type)            ((type) & TRIGGER_TYPE_ROW)
> #define TRIGGER_FOR_BEFORE(type)        ((type) & TRIGGER_TYPE_BEFORE)
> #define TRIGGER_FOR_INSERT(type)        ((type) & TRIGGER_TYPE_INSERT)
> #define TRIGGER_FOR_DELETE(type)        ((type) & TRIGGER_TYPE_DELETE)
> #define TRIGGER_FOR_UPDATE(type)        ((type) & TRIGGER_TYPE_UPDATE)
Index: src/include/libpq/crypt.h
===================================================================
RCS file: /cvsroot/pgsql/src/include/libpq/crypt.h,v
retrieving revision 1.30
diff -r1.30 crypt.h
20c20
< #define isMD5(passwd)    (strncmp((passwd),"md5",3) == 0 && \
---
> #define isMD5(passwd)    (strncmp(passwd, "md5", 3) == 0 && \
Index: src/include/regex/regguts.h
===================================================================
RCS file: /cvsroot/pgsql/src/include/regex/regguts.h,v
retrieving revision 1.3
diff -r1.3 regguts.h
66c66
< #define FUNCPTR(name, args) (*name) args
---
> #define FUNCPTR(name, args) (*(name)) args
Index: src/include/storage/itempos.h
===================================================================
RCS file: /cvsroot/pgsql/src/include/storage/itempos.h,v
retrieving revision 1.20
diff -r1.20 itempos.h
35c35
< #define PNOBREAK(OBJP, LEN)        ((OBJP)->op_len >= LEN)
---
> #define PNOBREAK(OBJP, LEN)        ((OBJP)->op_len >= (LEN))
Index: src/include/utils/pg_lzcompress.h
===================================================================
RCS file: /cvsroot/pgsql/src/include/utils/pg_lzcompress.h,v
retrieving revision 1.10
diff -r1.10 pg_lzcompress.h
49c49
< #define PGLZ_RAW_SIZE(_lzdata)            (_lzdata->rawsize)
---
> #define PGLZ_RAW_SIZE(_lzdata)            ((_lzdata)->rawsize)
58,59c58,59
< #define PGLZ_IS_COMPRESSED(_lzdata)        (_lzdata->varsize !=                \
<                                          _lzdata->rawsize +                    \
---
> #define PGLZ_IS_COMPRESSED(_lzdata)        ((_lzdata)->varsize !=                \
> e                                         (_lzdata)->rawsize +            e    \
183c183
< #define pglz_decomp_init(_ds,_lz) do {                                            \
---
> #define pglz_decomp_init(_ds,_lz) do {                                        \
Index: src/include/utils/timestamp.h
===================================================================
RCS file: /cvsroot/pgsql/src/include/utils/timestamp.h,v
retrieving revision 1.42
diff -r1.42 timestamp.h
126c126
< #define TIMESTAMP_NOBEGIN(j)    do {j = DT_NOBEGIN;} while (0)
---
> #define TIMESTAMP_NOBEGIN(j)    do {(j) = DT_NOBEGIN;} while (0)
129c129
< #define TIMESTAMP_NOEND(j)        do {j = DT_NOEND;} while (0)
---
> #define TIMESTAMP_NOEND(j)        do {(j) = DT_NOEND;} while (0)
Index: src/interfaces/ecpg/pgtypeslib/dt.h
===================================================================
RCS file: /cvsroot/pgsql/src/interfaces/ecpg/pgtypeslib/dt.h,v
retrieving revision 1.22
diff -r1.22 dt.h
196,197c196,197
<     q = ((t < 0) ? ceil(t / u): floor(t / u)); \
<     if (q != 0) t -= rint(q * u); \
---
>     (q) = (((t) < 0) ? ceil((t) / (u)): floor((t) / (u))); \
>     if ((q) != 0) (t) -= rint((q) * (u)); \
208,209c208,209
<     q = (t / u); \
<     if (q != 0) t -= (q * u); \
---
>     (q) = ((t) / (u)); \
>     if ((q) != 0) (t) -= ((q) * (u)); \
214,215c214,215
<     q = ((t < 0) ? ceil(t / u): floor(t / u)); \
<     if (q != 0) t -= rint(q * u); \
---
>     (q) = (((t) < 0) ? ceil((t) / (u)): floor((t) / (u))); \
>     if ((q) != 0) (t) -= rint((q) * (u)); \
280,281c280,281
< #define TIMESTAMP_NOBEGIN(j)    do {j = DT_NOBEGIN;} while (0)
< #define TIMESTAMP_NOEND(j)            do {j = DT_NOEND;} while (0)
---
> #define TIMESTAMP_NOBEGIN(j)    do {(j) = DT_NOBEGIN;} while (0)
> #define TIMESTAMP_NOEND(j)            do {(j) = DT_NOEND;} while (0)
Index: src/port/crypt.c
===================================================================
RCS file: /cvsroot/pgsql/src/port/crypt.c,v
retrieving revision 1.11
diff -r1.11 crypt.c
743c743
<         (*(int32_t *)((unsigned char *)t + i*(sizeof(int32_t)/4)))
---
>         (*(int32_t *)((unsigned char *)(t) + (i)*(sizeof(int32_t)/4)))
758,760c758,760
<             k = (q0 ^ q1) & SALT;    \
<             B.b32.i0 = k ^ q0 ^ kp->b32.i0;        \
<             B.b32.i1 = k ^ q1 ^ kp->b32.i1;        \
---
>             k = ((q0) ^ (q1)) & SALT;                \
>             B.b32.i0 = k ^ (q0) ^ kp->b32.i0;        \
>             B.b32.i1 = k ^ (q1) ^ kp->b32.i1;        \
Index: src/port/qsort.c
===================================================================
RCS file: /cvsroot/pgsql/src/port/qsort.c,v
retrieving revision 1.5
diff -r1.5 qsort.c
66,67c66,67
< #define SWAPINIT(a, es) swaptype = ((char *)a - (char *)0) % sizeof(long) || \
<     es % sizeof(long) ? 2 : es == sizeof(long)? 0 : 1;
---
> #define SWAPINIT(a, es) swaptype = ((char *)(a) - (char *)0) % sizeof(long) || \
>     (es) % sizeof(long) ? 2 : (es) == sizeof(long)? 0 : 1;