pg.ddx.io  pgsql-committers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Peter Eisentraut <peter@eisentraut.org>
To: pgsql-committers@lists.postgresql.org
Subject: pgsql: Enable test_cplusplusext with MSVC
Date: Wed, 01 Apr 2026 05:53:28 +0000
Message-ID: <E1w7oW7-002Pkc-1K@gemulon.postgresql.org> (raw)

Enable test_cplusplusext with MSVC

The test_cplusplusext test module has so far been disabled on MSVC.
The only remaining problem now is that designated initializers, as
used in PG_MODULE_MAGIC, require C++20.  (With GCC and Clang they work
in older C++ versions as well.)

This adds another test in the top-level meson.build to check that the
compiler supports C++20 designated initializers.  This is not
required, we are just checking and recording the answer.  If yes, we
can enable the test module.

Most current compilers likely won't be in C++20 mode by default.  This
doesn't change that; we are not doing anything to try to switch the
compiler into that mode.  This might be a separate project, but for
now we'll leave that for the user or the test scaffolding.

The VS task on Cirrus CI is changed to provide the required flag to
turn on C++20 mode.

There is no equivalent change in configure, since this change mainly
targets MSVC.

Co-authored-by: Jelte Fennema-Nio <postgres@jeltef.nl>
Discussion: https://www.postgresql.org/message-id/flat/CAGECzQR21OnnKiZO_1rLWO0-16kg1JBxnVq-wymYW0-_1cUNtg%40mai...

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/c05ad248f99c729b53f6fa83939266b509682c33

Modified Files
--------------
.cirrus.tasks.yml                              |  1 +
meson.build                                    | 14 ++++++++++++++
src/test/modules/test_cplusplusext/meson.build |  7 +------
3 files changed, 16 insertions(+), 6 deletions(-)



Message-ID: <E1w7oW7-002Pkc-1K@gemulon.postgresql.org>
Permalink:  ../E1w7oW7-002Pkc-1K@gemulon.postgresql.org/
Also on:    postgresql.org/message-id/E1w7oW7-002Pkc-1K@gemulon.postgresql.org

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-committers@postgresql.org
  Cc: peter@eisentraut.org, pgsql-committers@lists.postgresql.org
  Subject: Re: pgsql: Enable test_cplusplusext with MSVC
  In-Reply-To: <E1w7oW7-002Pkc-1K@gemulon.postgresql.org>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox