Re: C++ and using C functions

From: Andreas Pflug <pgadmin(at)pse-consulting(dot)de>
To: Czuczy Gergely <phoemix(at)harmless(dot)hu>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: C++ and using C functions
Date: 2003-09-02 14:01:16
Message-ID: 3F54A2AC.7060406@pse-consulting.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Czuczy Gergely wrote:

>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>hello
>
>i've tried to write a stored function in C++, using the libpq library, but
>the g++(3.3.1) was unable to pass through the headers. there are a lot's
>of reserved words used in structs as member names, such as delete,using,
>namespace, and so on.
>
>i'm using pgsql 7.3.4.
>how can I fix it? i think so, i should modify the header files, i've tried
>to put it into an ``extern "C" {...}'' block, but i didn't solve anything.
>
>any ideas?
>
>Bye,
>
>Gergely Czuczy
>mailto: phoemix(at)harmless(dot)hu
>PGP pubkey: http://phoemix.harmless.hu/phoemix.pgp
>iRCNet: #demoscene ICQ: 8067175
>
>The point is, that geeks are not necessarily the outcasts
>society often believes they are. The fact is that society
>isn't cool enough to be included in our activities.
>-----BEGIN PGP SIGNATURE-----
>Version: GnuPG v1.0.6 (GNU/Linux)
>Comment: For info see http://www.gnupg.org
>
>iD8DBQE/VKBDbBsEN0U7BV0RAkJPAKCg2/0JJEy+hhV7r3zcBAgYbWFRWQCg83/X
>kj5EXUhpsIiObE5DOn/jsgc=
>=H3YA
>-----END PGP SIGNATURE-----
>
>
>
You need to redefine several reserved names before may include
postgresql headers. This is an extract what I needed:

#define using __using
#define typeid __typeid
#define typename __typename
#define namespace __namespace
#define delete __delete
extern "C"
{
#include "postgres.h"
#include "executor/spi.h"
#include "funcapi.h"
}
#undef using
#undef typeid
#undef typename
#undef namespace
#undef delete

Regards,
Andreas

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Vince Vielhaber 2003-09-02 14:05:45 Re: C++ and using C functions
Previous Message Andreas Pflug 2003-09-02 13:58:01 Re: TCP/IP with 7.4 beta2 broken?