From: Tom Lane <tgl@sss.pgh.pa.us>
To: Тарасов Георгий Витальевич <Tarasov-G@gaz-is.ru>
Cc: pgsql-hackers@lists.postgresql.org
Subject: Re: compiling PL/pgSQL plugin with C++
Date: Thu, 30 May 2019 11:54:24 -0400
Message-ID: <51937.1559231664@sss.pgh.pa.us> (raw)
In-Reply-To: <b517ec3918d645eb950505eac8dd434e@gaz-is.ru>
References: <b517ec3918d645eb950505eac8dd434e@gaz-is.ru>
[ redirecting to -hackers ]
=?koi8-r?B?9MHSwdPP1yDnxc/Sx8nKIPfJ1MHM2MXXyd4=?= <Tarasov-G@gaz-is.ru> writes:
> I'm working on development of some PL/pgSQL plugin.
> The smaller part of my code is written on C.
> It's a standard extension code for integration with fmgr (_PG_init ...)
> But bigger part of the code is written on C++.
> And here I need declarations of internal PL/pgSQL structs from plpgsql.h
So ... that's supposed to work, because we have a test script that
verifies that all our headers compile as C++.
Or I thought it was "all", anyway. Closer inspection shows that it's
not checking src/pl. Nor contrib.
I propose that we change src/tools/pginclude/cpluspluscheck so that
it searches basically everywhere:
-for f in `find src/include src/interfaces/libpq/libpq-fe.h src/interfaces/libpq/libpq-events.h -name '*.h' -print | \
+for f in `find src contrib -name '*.h' -print | \
However, trying to run that, I find that plpython and plperl are both
seriously in violation of the project convention that headers should
compile standalone. It looks like most of their headers rely on an
assumption that the calling .c file already included the Python or
Perl headers respectively.
Anybody object to me reshuffling the #include's to make this pass?
I propose doing that for HEAD only, although we should back-patch
George's fix (and any other actual C++ problems we find).
regards, tom lane
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-general@postgresql.org
Cc: tgl@sss.pgh.pa.us, Tarasov-G@gaz-is.ru, pgsql-hackers@lists.postgresql.org
Subject: Re: compiling PL/pgSQL plugin with C++
In-Reply-To: <51937.1559231664@sss.pgh.pa.us>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox