Re: warnings for invalid function casts

From: Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Andres Freund <andres(at)anarazel(dot)de>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: warnings for invalid function casts
Date: 2020-07-03 14:04:10
Message-ID: c764383a-3f9e-f5ba-79d1-8824fe73340f@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2020-06-30 21:38, Tom Lane wrote:
> In any case, I think the issue here is what is the escape hatch for saying
> that "I know this cast is okay, don't warn about it, thanks". Treating
> "void (*) (void)" as special for that purpose is nothing more nor less
> than a kluge, so another compiler might do it differently. Given the
> POSIX restriction, I think we could reasonably use "void *" instead.

I think gcc had to pick some escape hatch that is valid also outside of
POSIX, so they just had to pick something. If we're disregarding
support for these Harvard architecture type things, then we might as
well use void * for easier notation.

Btw., one of the hunks in my patch was in PL/Python. I have found an
equivalent change in the core Python code, which does make use of void
(*) (void): https://github.com/python/cpython/commit/62be74290aca

--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2020-07-03 14:08:08 Re: Default setting for enable_hashagg_disk (hash_mem)
Previous Message Adam Brusselback 2020-07-03 13:57:55 Re: Persist MVCC forever - retain history