tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: icu update to 77.1



On 4/4/25 21:51, Thomas Klausner wrote:
On Fri, Apr 04, 2025 at 07:28:57AM +0200, Martin Husemann wrote:
On Thu, Apr 03, 2025 at 09:44:33PM +0200, Thomas Klausner wrote:
The previous version was already marked as needing C++17, so no
change.

Yes, but the compile errors you quoted come from g++ invocations using
older standards.

And one *could* make a distinction between the library needing C++$something
to build and the API in the public headers requiring C++$somethingelse.

I tried two things:

- Setting USE_CXX_FEATURES+=c++17 in icu/buildlink3.mk - with the same
   bulk build result, since qt5-qtwebkit uses -std=c++11

- Setting USE_CXX_FEATURES+=c++17 and FORCE_CXX_STD=c++17 directly in
   qt5-qtwebkit, which lead to it failing differently.

In file included from /scratch/x11/qt5-qtwebkit/work/qtwebkit-5.212.0-alpha4/Source/WTF/wtf/FastMalloc.h:26,
                  from /scratch/x11/qt5-qtwebkit/work/qtwebkit-5.212.0-alpha4/Source/WTF/config.h:51,
                  from /scratch/x11/qt5-qtwebkit/work/qtwebkit-5.212.0-alpha4/Source/WTF/wtf/Atomics.cpp:26:
/scratch/x11/qt5-qtwebkit/work/qtwebkit-5.212.0-alpha4/Source/WTF/wtf/StdLibExtras.h:330:36: error: conflicting declaration of template 'template<long unsigned int ...indexes> struct std::index_sequence'
   330 | template<size_t... indexes> struct index_sequence {
       |                                    ^~~~~~~~~~~~~~

That means qt5-qtwebkit defines std::index_sequence in their own header file, which of course conflicts with C++17 standard headers. No idea why they do that but that's surely asking for trouble. Maybe some kind of compatibility thing?

Home | Main Index | Thread Index | Old Index