Fix for clashing #defines of ERROR

Started by Gerhard Häringalmost 25 years ago3 messagespatches
Jump to latest
#1Gerhard Häring
haering_python@gmx.de

This fixes clashing defines of ERROR. On win32, winapi.h is included, which
includes windows.h, which #defines ERROR to 0. PostgreSQL's logging functions
define ERROR to -1. This patch redefines ERROR to -1 to avoid current or
future breakage of the logging functions.

Gerhard
--
mail: gerhard <at> bigfoot <dot> de registered Linux user #64239
web: http://www.cs.fhm.edu/~ifw00065/ public key at homepage
public key fingerprint: DEC1 1D02 5743 1159 CD20 A4B6 7B22 6575 86AB 43C0
reduce(lambda x,y:x+y,map(lambda x:chr(ord(x)^42),tuple('zS^BED\nX_FOY\x0b')))

Attachments:

win32_error_define_clash.diftext/plain; name=win32_error_define_clash.difDownload+4-0
#2Bruce Momjian
bruce@momjian.us
In reply to: Gerhard Häring (#1)
Re: Fix for clashing #defines of ERROR

Your patch has been added to the PostgreSQL unapplied patches list at:

http://candle.pha.pa.us/cgi-bin/pgpatches

I will try to apply it within the next 48 hours.

This fixes clashing defines of ERROR. On win32, winapi.h is included, which
includes windows.h, which #defines ERROR to 0. PostgreSQL's logging functions
define ERROR to -1. This patch redefines ERROR to -1 to avoid current or
future breakage of the logging functions.

Gerhard
--
mail: gerhard <at> bigfoot <dot> de registered Linux user #64239
web: http://www.cs.fhm.edu/~ifw00065/ public key at homepage
public key fingerprint: DEC1 1D02 5743 1159 CD20 A4B6 7B22 6575 86AB 43C0
reduce(lambda x,y:x+y,map(lambda x:chr(ord(x)^42),tuple('zS^BED\nX_FOY\x0b')))

diff -N -r -C3 --exclude=CVS ../pgsql_HEAD/src/include/libpq/pqcomm.h ./src/include/libpq/pqcomm.h
*** ../pgsql_HEAD/src/include/libpq/pqcomm.h	Mon Aug 27 20:43:58 2001
--- ./src/include/libpq/pqcomm.h	Mon Aug 27 20:46:56 2001
***************
*** 19,24 ****
--- 19,28 ----
#include <sys/types.h>
#ifdef WIN32
#include <winsock.h>
+ /* workaround for clashing defines of "ERROR" */
+ #ifdef ELOG_H
+ #define ERROR	(-1)
+ #endif
#else							/* not WIN32 */
#include <sys/socket.h>
#ifdef HAVE_SYS_UN_H

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://www.postgresql.org/search.mpl

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
#3Bruce Momjian
bruce@momjian.us
In reply to: Bruce Momjian (#2)
Re: Fix for clashing #defines of ERROR

I have applied the patch with the addition of an #undef before the
#define. (Tom recommended.) Thanks.

This fixes clashing defines of ERROR. On win32, winapi.h is included, which
includes windows.h, which #defines ERROR to 0. PostgreSQL's logging functions
define ERROR to -1. This patch redefines ERROR to -1 to avoid current or
future breakage of the logging functions.

Gerhard
--
mail: gerhard <at> bigfoot <dot> de registered Linux user #64239
web: http://www.cs.fhm.edu/~ifw00065/ public key at homepage
public key fingerprint: DEC1 1D02 5743 1159 CD20 A4B6 7B22 6575 86AB 43C0
reduce(lambda x,y:x+y,map(lambda x:chr(ord(x)^42),tuple('zS^BED\nX_FOY\x0b')))

diff -N -r -C3 --exclude=CVS ../pgsql_HEAD/src/include/libpq/pqcomm.h ./src/include/libpq/pqcomm.h
*** ../pgsql_HEAD/src/include/libpq/pqcomm.h	Mon Aug 27 20:43:58 2001
--- ./src/include/libpq/pqcomm.h	Mon Aug 27 20:46:56 2001
***************
*** 19,24 ****
--- 19,28 ----
#include <sys/types.h>
#ifdef WIN32
#include <winsock.h>
+ /* workaround for clashing defines of "ERROR" */
+ #ifdef ELOG_H
+ #define ERROR	(-1)
+ #endif
#else							/* not WIN32 */
#include <sys/socket.h>
#ifdef HAVE_SYS_UN_H

---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?

http://www.postgresql.org/search.mpl

-- 
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 853-3000
  +  If your life is a hard drive,     |  830 Blythe Avenue
  +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026