Re: C++ and using C functions
От | Andreas Pflug |
---|---|
Тема | Re: C++ and using C functions |
Дата | |
Msg-id | 3F54A2AC.7060406@pse-consulting.de обсуждение исходный текст |
Ответ на | C++ and using C functions (Czuczy Gergely <phoemix@harmless.hu>) |
Список | 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@harmless.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
В списке pgsql-hackers по дате отправления: