Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1iNuW6-0005kB-3W for pgsql-committers@arkaria.postgresql.org; Fri, 25 Oct 2019 08:00:14 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1iNuW4-0000m3-L9 for pgsql-committers@arkaria.postgresql.org; Fri, 25 Oct 2019 08:00:12 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1iNuW4-0000lw-Ds for pgsql-committers@lists.postgresql.org; Fri, 25 Oct 2019 08:00:12 +0000 Received: from lungold.riddles.org.uk ([82.68.208.19]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1iNuW1-0002k7-Fj; Fri, 25 Oct 2019 08:00:12 +0000 Received: from [192.168.127.1] (port=14439 helo=caithnard.riddles.org.uk) by lungold.riddles.org.uk with esmtp (Exim 4.92.3 (FreeBSD)) (envelope-from ) id 1iNuVv-000NXd-N5; Fri, 25 Oct 2019 08:00:03 +0000 Received: from localhost ([127.0.0.1]:34131 helo=caithnard.riddles.org.uk) by caithnard.riddles.org.uk with esmtp (Exim 4.92.3 (FreeBSD)) (envelope-from ) id 1iNuVv-0001bX-Ig; Fri, 25 Oct 2019 08:00:03 +0000 From: Andrew Gierth To: Amit Kapila Cc: Michael Paquier , Amit Kapila , pgsql-committers@lists.postgresql.org Subject: Re: pgsql: Make the order of the header file includes consistent in non-bac In-Reply-To: (Amit Kapila's message of "Fri, 25 Oct 2019 09:32:29 +0530") Message-ID: <87h83xmg4m.fsf@news-spur.riddles.org.uk> References: <20191025031702.GD8671@paquier.xyz> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (berkeley-unix) Date: Fri, 25 Oct 2019 09:00:03 +0100 MIME-Version: 1.0 Content-Type: text/plain List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk >>>>> "Amit" == Amit Kapila writes: Amit> BTW, prairiedog is also show similar failure and both seems to Amit> have similar OS except for versions. Be aware that prairiedog and locust (unlike the rest of the buildfarm) have compilers whose "bool" type is not 1 byte long; PG can't use that, so we don't include on those platforms. Looking at c.h, the problem seems to be that when we define our own bool in the absence of a usable stdbool.h, we do so as a typedef and not a macro. So pgtypeslib_extern.h ends up redefining it in that case, and (this bit may be my fault: see d26a810eb) uses a different type to c.h (char vs. unsigned char). (stdbool.h is required by spec to do #define bool _Bool rather than a typedef, hence the difference in behavior) I'm no expert on the ECPG internals, but this doesn't look like an exposed interface, so maybe it just shouldn't be trying to #define bool at all and just rely on c.h (from postgres_fe.h) to declare the type? -- Andrew (irc:RhodiumToad)