From: | Peter Eisentraut <peter_e(at)gmx(dot)net> |
---|---|
To: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | issue with cpluspluscheck and systemtap |
Date: | 2013-02-28 03:16:00 |
Message-ID: | 512ECBF0.5090807@gmx.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Newer versions of systemtap have some C++ code in their sys/sdt.h header
file (guarded by #ifdef __cpluplus). cpluspluscheck ends up wrapping
all of that into extern "C" { ... }, which ultimately results in
In file included from ./src/include/utils/probes.h:9:0,
from ./src/include/pg_trace.h:15,
from /tmp/cpluspluscheck.VuUGok/test.cpp:3:
/usr/include/sys/sdt.h:71:1: error: template with C linkage
/usr/include/sys/sdt.h:81:1: error: template specialization with C linkage
/usr/include/sys/sdt.h:82:1: error: template specialization with C linkage
etc.
I don't think there is a way to escape back into C++ linkage inside an
extern "C" block.
If there is no better way, I suggest we exclude pg_trace.h and
utils/probes.h from cpluspluscheck.
From | Date | Subject | |
---|---|---|---|
Next Message | Michael Paquier | 2013-02-28 06:21:49 | Re: Support for REINDEX CONCURRENTLY |
Previous Message | Craig Ringer | 2013-02-27 23:57:34 | Database system identifier via SELECT |