Compiling CppCMS using g++ 14 and icu 76.1 yields the following and more errors:
[ 0%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/encoding/codepage.cpp.o
In file included from /usr/include/unicode/unistr.h:37,
from cppcms/booster/lib/locale/src/encoding/../icu/uconv.h:10,
from cppcms/booster/lib/locale/src/encoding/uconv_codepage.ipp:13,
from cppcms/booster/lib/locale/src/encoding/codepage.cpp:21:
/usr/include/unicode/char16ptr.h:317:10: error: ‘is_convertible_v’ is not a member of ‘std’; did you mean ‘is_convertible’?
317 | std::is_convertible_v<T, std::u16string_view>
| ^~~~~~~~~~~~~~~~
| is_convertible
/usr/include/unicode/char16ptr.h:317:28: error: expected primary-expression before ‘,’ token
317 | std::is_convertible_v<T, std::u16string_view>
| ^
/usr/include/unicode/char16ptr.h:331:13: error: ‘u16string_view’ in namespace ‘std’ does not name a type; did you mean ‘u16string’?
331 | inline std::u16string_view toU16StringView(std::u16string_view sv) { return sv; }
Compiling CppCMS using g++ 14 and icu 76.1 yields the following and more errors:
[ 0%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/encoding/codepage.cpp.o
In file included from /usr/include/unicode/unistr.h:37,
from cppcms/booster/lib/locale/src/encoding/../icu/uconv.h:10,
from cppcms/booster/lib/locale/src/encoding/uconv_codepage.ipp:13,
from cppcms/booster/lib/locale/src/encoding/codepage.cpp:21:
/usr/include/unicode/char16ptr.h:317:10: error: ‘is_convertible_v’ is not a member of ‘std’; did you mean ‘is_convertible’?
317 | std::is_convertible_v<T, std::u16string_view>
| ^~~~~~~~~~~~~~~~
| is_convertible
/usr/include/unicode/char16ptr.h:317:28: error: expected primary-expression before ‘,’ token
317 | std::is_convertible_v<T, std::u16string_view>
| ^
/usr/include/unicode/char16ptr.h:331:13: error: ‘u16string_view’ in namespace ‘std’ does not name a type; did you mean ‘u16string’?
331 | inline std::u16string_view toU16StringView(std::u16string_view sv) { return sv; }