Search Postgresql Archives

Re: #include <funcapi.h>

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 12/26/2010 02:14 PM, Elliot Chance wrote:

In file included from /usr/include/pgsql/server/access/heapam.h:21,
                  from /usr/include/pgsql/server/nodes/execnodes.h:18,
                  from /usr/include/pgsql/server/executor/execdesc.h:18,
                  from /usr/include/pgsql/server/executor/executor.h:17,
                  from /usr/include/pgsql/server/funcapi.h:21,
                  from xapian.cpp:4:
/usr/include/pgsql/server/nodes/primnodes.h:1155: error: expected unqualified-id before ‘using’

You've neglected to mention which version of Pg you're compiling against, so that line number means nothing. What's the offending line of code and the surrounding few lines in primnodes.h?

In any case, I think it's very likely the issue is a C/C++ incompatibility in the Pg headers. It fails for me in a different place using Pg 9.1git and g++ 4.5, complaining about the use of "private" as an identifier in fmgr.h, because it's a keyword in C++.

This is one of the many reasons you should keep any code that touches the postgres innards as pure C, and call into your C++ code via "extern C" functions. The Pg headers aren't really C++ safe. Neither is Pg's longjmp-based error handling, which really won't mix well with exceptions or with stack-based objects that have dtors.

--
Craig Ringer

--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux