Re: Unimpressed with pg_attribute_always_inline - Mailing list pgsql-hackers

From Thomas Munro
Subject Re: Unimpressed with pg_attribute_always_inline
Date
Msg-id CAEepm=2iTKvbebiK3CdoczQk4_FfDt1EeU4c+nGE340JH7gQ0g@mail.gmail.com
Whole thread Raw
In response to Re: Unimpressed with pg_attribute_always_inline  (Thomas Munro <thomas.munro@enterprisedb.com>)
Responses Re: Unimpressed with pg_attribute_always_inline
List pgsql-hackers
On Tue, Jan 2, 2018 at 4:58 PM, Thomas Munro
<thomas.munro@enterprisedb.com> wrote:
> On Tue, Jan 2, 2018 at 4:17 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>>  gaur      | nodeHashjoin.c:167: warning: `always_inline' attribute directive ignored
>>  mastodon  | .\src\backend\executor\nodeHashjoin.c(165): warning C4141: 'inline' : used more than once
>
> 1. MSVC doesn't like you to say both "__forceinline" and "inline".
>
> 2.  GCC 2.95.3 doesn't understand always_inline.  From a quick look at
> archived manuals, it seems that that attribute arrived in 3.1.

Here is one way to fix those warnings.  Thoughts?

>> Therefore, I think that pg_attribute_always_inline is not merely
>> useless but actively bad, and should be removed.

How about a macro PG_NOINLINE, which, if defined, inhibits this?  Or I
could give up this strategy and maintain two separate very similar
functions, ExecHashJoin and ExecParallelHashJoin.

-- 
Thomas Munro
http://www.enterprisedb.com

Attachment

pgsql-hackers by date:

Previous
From: David Rowley
Date:
Subject: Re: [HACKERS] UPDATE of partition key
Next
From: Simon Riggs
Date:
Subject: Re: [PATCH] Logical decoding of TRUNCATE