Re: ilist.h fails cpluspluscheck

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: ilist.h fails cpluspluscheck
Date: 2012-11-27 06:14:27
Message-ID: 28960.1353996867@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Peter Eisentraut <peter_e(at)gmx(dot)net> writes:
> In file included from ./src/include/utils/catcache.h:25:0,
> from /tmp/cpluspluscheck.bt8VZr/test.cpp:3:
> src/include/lib/ilist.h: In function dlist_node* dlist_head_node(dlist_head*):
> src/include/lib/ilist.h:470:39: error: invalid conversion from void* to dlist_node* [-fpermissive]

> Maybe some ifndef __cplusplus would help.

Or maybe we need to recommend use of -fpermissive? If C++ thinks
casting void * to something else is illegitimate, it's basically not
going to cope with most things we might try to inline in Postgres.
And I don't think that saying "you don't get to call these fundamental
support functions from C++" is likely to fly, so just hiding the
functions won't help much.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Heikki Linnakangas 2012-11-27 08:42:12 Re: Plugging fd leaks (was Re: Switching timeline over streaming replication)
Previous Message Tom Lane 2012-11-27 06:08:55 Re: Re: Problem Observed in behavior of Create Index Concurrently and Hot Update