Re: Enable -Wstrict-prototypes and -Wold-style-definition by default

Bertrand Drouvot <bertranddrouvot.pg@gmail.com>

From: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
To: Peter Eisentraut <peter@eisentraut.org>
Cc: pgsql-hackers@lists.postgresql.org
Date: 2026-03-25T03:17:35Z
Lists: pgsql-hackers
Hi,

On Tue, Mar 24, 2026 at 10:36:43PM +0100, Peter Eisentraut wrote:
> On 24.03.26 08:16, Bertrand Drouvot wrote:
> > 0001:
> > 
> > +    '/external:anglebrackets',
> > +    '/external:W0',
> > 
> > The doc [1], states:
> > 
> > "
> > The /external compiler options are available starting in Visual Studio 2017 version 15.6.
> > In versions of Visual Studio before Visual Studio 2019 version 16.10, the /external
> > options require you also set the /experimental:external compiler option.
> > "
> > 
> > We currently require MSVC 2019, but what if one is using a version < 16.10?
> 
> Per discussion in [0] we effectively require 16.11, so I think this should
> be ok.

Agree, thanks for the link!

Regards,

-- 
Bertrand Drouvot
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Add warning option -Wold-style-declaration

  2. configure: Apply -Werror=vla to C++ as well as C

  3. Enable warning like -Wstrict-prototypes on MSVC as well

  4. Remove compiler warning option -Wendif-labels

  5. Disable warnings in system headers in MSVC

  6. Fix -Wstrict-prototypes warning in ecpg_init_sqlca() declaration.