cpluspluscheck vs ICU again
John Naylor <johncnaylorls@gmail.com>
From: John Naylor <johncnaylorls@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>,
Andres Freund <andres@anarazel.de>, Peter Eisentraut <peter@eisentraut.org>
Date: 2025-07-02T07:01:13Z
Lists: pgsql-hackers
Attachments
- v1-0001-Properly-fix-cpluspluscheck-with-ICU.patch (text/x-patch) patch v1-0001
On Tue, Jul 1, 2025 at 9:24 PM Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Ha, indeed you are right. On my RHEL9 box, it's kinda drowned out
> by complaints about
>
> /usr/include/c++/11/bits/range_access.h:109:3: error: template with C linkage
> 109 | template<typename _Tp> _Tp* end(valarray<_Tp>&) noexcept;
> | ^~~~~~~~
> /tmp/headerscheck.u5CrRM/test.cpp:1:1: note: ‘extern "C"’ linkage started here
> 1 | extern "C" {
> | ^~~~~~~~~~
After pushing my fix, I looked into this, and CI works around this by
disabling ICU. A proper fix was discussed here, but it trailed off:
https://www.postgresql.org/message-id/flat/20230311033727.koa4saxy5wyquu6s%40awork3.anarazel.de#03346c63050bbc69dfca8981a5698e4a
I came up with the attached -- Andres, Peter, does this match your recollection?
--
John Naylor
Amazon Web Services
Commits
-
Update ICU C++ API symbols
- 9560c1ec1c93 13.22 landed
- a4f891b96235 14.19 landed
- baacfb9e609c 15.14 landed
- aae9aad19d82 16.10 landed
- 21ae8fc5fd86 17.6 landed
- dd29262077e8 18.0 landed
- 90bfae9f93e7 19 (unreleased) landed
-
Hide ICU C++ APIs from pg_locale.h
- ed26c4e25a44 19 (unreleased) landed
-
Remove implicit cast from 'void *'
- 3e73d8735371 18.0 landed
- 9adb58a3ccb5 19 (unreleased) landed
-
Inline CRC computation for small fixed-length input on x86
- e2809e3a1015 18.0 cited