#1143973 cyrus-imapd: autopkgtest needs update for new version of gcc-defaults

#1143973#5
Date:
2026-08-09 06:49:34 UTC
From:
To:
Dear maintainer(s),

With a recent upload of gcc-defaults the autopkgtest of cyrus-imapd
fails in testing when that autopkgtest is run with the binary packages
of gcc-defaults from unstable. It passes when run with only packages
from testing. In tabular form:

                        pass            fail
gcc-defaults           from testing    1.233
cyrus-imapd            from testing    3.12.3-2
all others             from testing    from testing

I copied some of the output at the bottom of this report.

Currently this regression is blocking the migration of gcc-defaults to
testing [1]. Of course, gcc-defaults shouldn't just break your
autopkgtest (or even worse, your package), but it seems to me that the
change in gcc-defaults was intended and your package needs to update to
the new situation.

If this is a real problem in your package (and not only in your
autopkgtest), the right binary package(s) from gcc-defaults should
really add a versioned Breaks on the unfixed version of (one of your)
package(s). Note: the Breaks is nice even if the issue is only in the
autopkgtest as it helps the migration software to figure out the right
versions to combine in the tests.

More information about this bug and the reason for filing it can be found on
https://wiki.debian.org/ContinuousIntegration/RegressionEmailInformation

Paul

[1] https://qa.debian.org/excuses.php?package=gcc-defaults

https://ci.debian.net/data/autopkgtest/testing/amd64/c/cyrus-imapd/74175260/log.gz

  82s x86_64-linux-gnu-gcc -DHAVE_CONFIG_H -I.   -I. -I./lib -I. -I./lib
-DLIBEXEC_DIR=\"/usr/lib/cyrus/bin\" -DSBIN_DIR=\"/usr/lib/cyrus/bin\" 
-DSYSCONF_DIR=\"/etc\" -DHAVE_CONFIG_H      -I/usr/include/libxml2 
        -I/usr/include/postgresql -Wdate-time -D_FORTIFY_SOURCE=2
-I/usr/include -DBUILD_LMTPD -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -c -o 
imap/lmtpd-caldav_util.o `test -f 'imap/caldav_util.c' || echo
'./'`imap/caldav_util.c
  82s In file included from /usr/include/unicode/uenum.h:25,
  82s                  from /usr/include/unicode/ucnv.h:52,
  82s                  from imap/icu_wrap.cpp:50:
  82s /usr/include/unicode/localpointer.h:559:26: error: parameter
declared 'auto'
  82s   559 | template <typename Type, auto closeFunction>
  82s       |                          ^~~~
  82s /usr/include/unicode/localpointer.h:571:76: error: template
argument 2 is invalid [-Wtemplate-body]
  82s   571 |     explicit LocalOpenPointer(std::unique_ptr<Type,
decltype(closeFunction)> &&p)
  82s       |
                 ^
  82s /usr/include/unicode/localpointer.h:581:78: error: template
argument 2 is invalid [-Wtemplate-body]
  82s   581 |     LocalOpenPointer &operator=(std::unique_ptr<Type,
decltype(closeFunction)> &&p) {
  82s       |
                   ^
  82s /usr/include/unicode/localpointer.h:597:59: error: template
argument 2 is invalid [-Wtemplate-body]
  82s   597 |     operator std::unique_ptr<Type,
decltype(closeFunction)> () && {
  82s       |                                                           ^
  82s /usr/include/unicode/uenum.h:69:1: note: invalid template non-type
parameter
  82s    69 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUEnumerationPointer,
UEnumeration, uenum_close);
  82s       | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
  82s /usr/include/unicode/ucnv.h:597:1: note: invalid template non-type
parameter
  82s   597 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUConverterPointer,
UConverter, ucnv_close);
  82s       | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
  82s In file included from /usr/include/unicode/unistr.h:37,
  82s                  from imap/icu_wrap.cpp:51:
  82s /usr/include/unicode/char16ptr.h:271:38: error: 'enable_if_t' in
namespace 'std' does not name a template type
  82s   271 | template<typename T, typename =
std::enable_if_t<std::is_same_v<T, UChar>>>
  82s       |                                      ^~~~~~~~~~~
  82s /usr/include/unicode/char16ptr.h:271:33: note: 'std::enable_if_t'
is only available from C++14 onwards
  82s   271 | template<typename T, typename =
std::enable_if_t<std::is_same_v<T, UChar>>>
  82s       |                                 ^~~
  82s /usr/include/unicode/char16ptr.h:271:49: error: expected '>'
before '<' token
  82s   271 | template<typename T, typename =
std::enable_if_t<std::is_same_v<T, UChar>>>
  82s       |                                                 ^
  82s /usr/include/unicode/char16ptr.h: In function 'const char16_t*
icu_78::uprv_char16PtrFromUChar(const T*)':
  82s /usr/include/unicode/char16ptr.h:273:24: error: 'is_same_v' is not
a member of 'std'; did you mean 'is_same'? [-Wtemplate-body]
  82s   273 |     if constexpr (std::is_same_v<UChar, char16_t>) {
  82s       |                        ^~~~~~~~~
  82s       |                        is_same
  82s /usr/include/unicode/char16ptr.h:273:39: error: expected
primary-expression before ',' token [-Wtemplate-body]
  82s   273 |     if constexpr (std::is_same_v<UChar, char16_t>) {
  82s       |                                       ^
  82s /usr/include/unicode/char16ptr.h:273:41: error: expected
primary-expression before 'char16_t' [-Wtemplate-body]
  82s   273 |     if constexpr (std::is_same_v<UChar, char16_t>) {
  82s       |                                         ^~~~~~~~
  82s /usr/include/unicode/char16ptr.h:273:40: error: expected ')'
before 'char16_t' [-Wtemplate-body]
  82s   273 |     if constexpr (std::is_same_v<UChar, char16_t>) {
  82s       |                  ~                     ^~~~~~~~~
  82s       |                                        )
  82s /usr/include/unicode/char16ptr.h: At global scope:
  82s /usr/include/unicode/char16ptr.h:386:10: error: 'is_convertible_v'
is not a member of 'std'; did you mean 'is_convertible'?
  82s   386 |     std::is_convertible_v<T, std::u16string_view>
  82s       |          ^~~~~~~~~~~~~~~~
  82s       |          is_convertible
  82s /usr/include/unicode/char16ptr.h:386:28: error: expected
primary-expression before ',' token
  82s   386 |     std::is_convertible_v<T, std::u16string_view>
  82s       |                            ^
  82s /usr/include/unicode/char16ptr.h:400:13: error: 'u16string_view'
in namespace 'std' does not name a type; did you mean 'u16string'?
  82s   400 | inline std::u16string_view
toU16StringView(std::u16string_view sv) { return sv; }
  82s       |             ^~~~~~~~~~~~~~
  82s       |             u16string
  82s /usr/include/unicode/char16ptr.h:408:13: error: 'u16string_view'
in namespace 'std' does not name a type; did you mean 'u16string'?
  82s   408 | inline std::u16string_view
toU16StringView(std::basic_string_view<uint16_t> sv) {
  82s       |             ^~~~~~~~~~~~~~
  82s       |             u16string
  82s /usr/include/unicode/char16ptr.h:429:36: error: 'enable_if_t' in
namespace 'std' does not name a template type
  82s   429 |           typename = typename
std::enable_if_t<!std::is_pointer_v<std::remove_reference_t<T>>>>
  82s       |                                    ^~~~~~~~~~~
  82s /usr/include/unicode/char16ptr.h:429:36: note: 'std::enable_if_t'
is only available from C++14 onwards
  82s /usr/include/unicode/char16ptr.h:429:47: error: expected '>'
before '<' token
  82s   429 |           typename = typename
std::enable_if_t<!std::is_pointer_v<std::remove_reference_t<T>>>>
  82s       |                                               ^
  82s /usr/include/unicode/char16ptr.h:430:13: error: 'u16string_view'
in namespace 'std' does not name a type; did you mean 'u16string'?
  82s   430 | inline std::u16string_view toU16StringViewNullable(const
T& text) {
  82s       |             ^~~~~~~~~~~~~~
  82s       |             u16string
  82s /usr/include/unicode/char16ptr.h:439:36: error: 'enable_if_t' in
namespace 'std' does not name a template type
  82s   439 |           typename = typename
std::enable_if_t<std::is_pointer_v<std::remove_reference_t<T>>>,
  82s       |                                    ^~~~~~~~~~~
  82s /usr/include/unicode/char16ptr.h:439:36: note: 'std::enable_if_t'
is only available from C++14 onwards
  82s /usr/include/unicode/char16ptr.h:439:47: error: expected '>'
before '<' token
  82s   439 |           typename = typename
std::enable_if_t<std::is_pointer_v<std::remove_reference_t<T>>>,
  82s       |                                               ^
  82s /usr/include/unicode/char16ptr.h:441:13: error: 'u16string_view'
in namespace 'std' does not name a type; did you mean 'u16string'?
  82s   441 | inline std::u16string_view toU16StringViewNullable(const
T& text) {
  82s       |             ^~~~~~~~~~~~~~
  82s       |             u16string
  82s x86_64-linux-gnu-gcc -DHAVE_CONFIG_H -I.   -I. -I./lib -I. -I./lib
-DLIBEXEC_DIR=\"/usr/lib/cyrus/bin\" -DSBIN_DIR=\"/usr/lib/cyrus/bin\" 
-DSYSCONF_DIR=\"/etc\" -DHAVE_CONFIG_H      -I/usr/include/libxml2 
        -I/usr/include/postgresql -Wdate-time -D_FORTIFY_SOURCE=2
-I/usr/include -DBUILD_LMTPD -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -c -o 
imap/lmtpd-defaultalarms.o `test -f 'imap/defaultalarms.c' || echo
'./'`imap/defaultalarms.c
  82s x86_64-linux-gnu-gcc -DHAVE_CONFIG_H -I.   -I. -I./lib -I. -I./lib
-DLIBEXEC_DIR=\"/usr/lib/cyrus/bin\" -DSBIN_DIR=\"/usr/lib/cyrus/bin\" 
-DSYSCONF_DIR=\"/etc\" -DHAVE_CONFIG_H      -I/usr/include/libxml2 
        -I/usr/include/postgresql -Wdate-time -D_FORTIFY_SOURCE=2
-I/usr/include -DBUILD_LMTPD -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -c -o 
imap/lmtpd-itip_support.o `test -f 'imap/itip_support.c' || echo
'./'`imap/itip_support.c
  82s In file included from /usr/include/unicode/unistr.h:40:
  82s /usr/include/unicode/stringpiece.h:134:29: error: 'enable_if_t' in
namespace 'std' does not name a template type
  82s   134 |             typename = std::enable_if_t<
  82s       |                             ^~~~~~~~~~~
  82s /usr/include/unicode/stringpiece.h:134:24: note:
'std::enable_if_t' is only available from C++14 onwards
  82s   134 |             typename = std::enable_if_t<
  82s       |                        ^~~
  82s /usr/include/unicode/stringpiece.h:134:40: error: expected '>'
before '<' token
  82s   134 |             typename = std::enable_if_t<
  82s       |                                        ^
  82s /usr/include/unicode/stringpiece.h:185:19: error: expected
type-specifier
  82s   185 |   inline operator std::string_view() const {
  82s       |                   ^~~
  82s In file included from /usr/include/unicode/unistr.h:41:
  82s /usr/include/unicode/bytestream.h: In member function 'virtual
void icu_78::StringByteSink<StringClass>::Append(const char*, int32_t)':
  82s /usr/include/unicode/bytestream.h:320:24: error: 'is_same_v' is
not a member of 'std'; did you mean 'is_same'? [-Wtemplate-body]
  82s   320 |     if constexpr (std::is_same_v<Unit, char>) {
  82s       |                        ^~~~~~~~~
  82s       |                        is_same
  82s /usr/include/unicode/bytestream.h:320:38: error: expected
primary-expression before ',' token [-Wtemplate-body]
  82s   320 |     if constexpr (std::is_same_v<Unit, char>) {
  82s       |                                      ^
  82s /usr/include/unicode/bytestream.h:320:40: error: expected
primary-expression before 'char' [-Wtemplate-body]
  82s   320 |     if constexpr (std::is_same_v<Unit, char>) {
  82s       |                                        ^~~~
  82s /usr/include/unicode/bytestream.h:320:40: error: expected ')'
before 'char' [-Wtemplate-body]
  82s /usr/include/unicode/bytestream.h:320:18: note: to match this '('
  82s   320 |     if constexpr (std::is_same_v<Unit, char>) {
  82s       |                  ^
  82s /usr/include/unicode/unistr.h: At global scope:
  82s /usr/include/unicode/unistr.h:354:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  82s   354 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                        ^~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:354:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  82s   354 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                   ^~~
  82s /usr/include/unicode/unistr.h:354:51: error: expected '>' before
'<' token
  82s   354 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                                   ^
  82s /usr/include/unicode/unistr.h:387:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  82s   387 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                        ^~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:387:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  82s   387 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                   ^~~
  82s /usr/include/unicode/unistr.h:387:51: error: expected '>' before
'<' token
  82s   387 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                                   ^
  82s x86_64-linux-gnu-gcc -DHAVE_CONFIG_H -I.   -I. -I./lib -I. -I./lib
-DLIBEXEC_DIR=\"/usr/lib/cyrus/bin\" -DSBIN_DIR=\"/usr/lib/cyrus/bin\" 
-DSYSCONF_DIR=\"/etc\" -DHAVE_CONFIG_H      -I/usr/include/libxml2 
        -I/usr/include/postgresql -Wdate-time -D_FORTIFY_SOURCE=2
-I/usr/include -DBUILD_LMTPD -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -c -o 
imap/lmtpd-jmap_util.o `test -f 'imap/jmap_util.c' || echo
'./'`imap/jmap_util.c
  82s /usr/include/unicode/unistr.h:1928:37: error: 'u16string_view' in
namespace 'std' does not name a type; did you mean 'u16string'?
  82s  1928 |   using unspecified_iterator =
std::u16string_view::const_iterator;
  82s       |                                     ^~~~~~~~~~~~~~
  82s       |                                     u16string
  82s /usr/include/unicode/unistr.h:1929:45: error: 'u16string_view' in
namespace 'std' does not name a type; did you mean 'u16string'?
  82s  1929 |   using unspecified_reverse_iterator =
std::u16string_view::const_reverse_iterator;
  82s       |                                             ^~~~~~~~~~~~~~
  82s       |                                             u16string
  82s /usr/include/unicode/unistr.h:1937:3: error:
'unspecified_iterator' does not name a type
  82s  1937 |   unspecified_iterator begin() const { return
std::u16string_view(*this).begin(); }
  82s       |   ^~~~~~~~~~~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:1943:3: error:
'unspecified_iterator' does not name a type
  82s  1943 |   unspecified_iterator end() const { return
std::u16string_view(*this).end(); }
  82s       |   ^~~~~~~~~~~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:1949:3: error:
'unspecified_reverse_iterator' does not name a type
  82s  1949 |   unspecified_reverse_iterator rbegin() const { return
std::u16string_view(*this).rbegin(); }
  82s       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:1955:3: error:
'unspecified_reverse_iterator' does not name a type
  82s  1955 |   unspecified_reverse_iterator rend() const { return
std::u16string_view(*this).rend(); }
  82s       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:2021:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  82s  2021 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                        ^~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:2021:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  82s  2021 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                   ^~~
  82s /usr/include/unicode/unistr.h:2021:51: error: expected '>' before
'<' token
  82s  2021 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                                   ^
  82s /usr/include/unicode/unistr.h:2286:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  82s  2286 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                        ^~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:2286:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  82s  2286 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                   ^~~
  82s /usr/include/unicode/unistr.h:2286:51: error: expected '>' before
'<' token
  82s  2286 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                                   ^
  82s /usr/include/unicode/unistr.h:2357:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  82s  2357 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                        ^~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:2357:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  82s  2357 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                   ^~~
  82s /usr/include/unicode/unistr.h:2357:51: error: expected '>' before
'<' token
  82s  2357 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                                   ^
  82s /usr/include/unicode/unistr.h:3101:19: error: expected type-specifier
  82s  3101 |   inline operator std::u16string_view() const {
  82s       |                   ^~~
  82s /usr/include/unicode/unistr.h:3337:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  82s  3337 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                        ^~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:3337:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  82s  3337 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                   ^~~
  82s /usr/include/unicode/unistr.h:3337:51: error: expected '>' before
'<' token
  82s  3337 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                                   ^
  82s /usr/include/unicode/unistr.h:3661:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  82s  3661 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                        ^~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:3661:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  82s  3661 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                   ^~~
  82s /usr/include/unicode/unistr.h:3661:51: error: expected '>' before
'<' token
  82s  3661 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  82s       |                                                   ^
  82s /usr/include/unicode/unistr.h:3816:60: error:
'std::u16string_view' has not been declared; did you mean 'std::u16string'?
  82s  3816 |   static UnicodeString
readOnlyAliasFromU16StringView(std::u16string_view text);
  82s       |
^~~~~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:3932:64: error:
'std::u16string_view' has not been declared; did you mean 'std::u16string'?
  82s  3932 |   UnicodeString& doReplace(int32_t start, int32_t length,
std::u16string_view src);
  82s       |
     ^~~~~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:3936:32: error:
'std::u16string_view' has not been declared; did you mean 'std::u16string'?
  82s  3936 |   UnicodeString& doAppend(std::u16string_view src);
  82s       |                                ^~~~~~~~~~~~~~
  82s /usr/include/unicode/unistr.h: In member function 'bool
icu_78::UnicodeString::operator==(const S&) const':
  82s /usr/include/unicode/unistr.h:356:10: error: 'u16string_view' is
not a member of 'std'; did you mean 'u16string'? [-Wtemplate-body]
  82s   356 |     std::u16string_view sv(internal::toU16StringView(text));
  82s       |          ^~~~~~~~~~~~~~
  82s       |          u16string
  82s /usr/include/unicode/unistr.h:358:46: error: 'sv' was not declared
in this scope [-Wtemplate-body]
  82s   358 |     return !isBogus() && (len = length()) == sv.length()
&& doEquals(sv.data(), len);
  82s       |                                              ^~
  82s /usr/include/unicode/unistr.h: In member function
'icu_78::UnicodeString& icu_78::UnicodeString::operator=(const S&)':
  82s /usr/include/unicode/unistr.h:2024:45: error: 'toU16StringView' is
not a member of 'icu_78::internal' [-Wtemplate-body]
  82s  2024 |     return doReplace(0, length(),
internal::toU16StringView(src));
  82s       |                                             ^~~~~~~~~~~~~~~
  82s /usr/include/unicode/unistr.h: In member function
'icu_78::UnicodeString& icu_78::UnicodeString::operator+=(const S&)':
  82s /usr/include/unicode/unistr.h:2288:31: error: 'toU16StringView' is
not a member of 'icu_78::internal' [-Wtemplate-body]
  82s  2288 |     return doAppend(internal::toU16StringView(src));
  82s       |                               ^~~~~~~~~~~~~~~
  82s /usr/include/unicode/unistr.h: In member function
'icu_78::UnicodeString& icu_78::UnicodeString::append(const S&)':
  82s /usr/include/unicode/unistr.h:2359:31: error: 'toU16StringView' is
not a member of 'icu_78::internal' [-Wtemplate-body]
  82s  2359 |     return doAppend(internal::toU16StringView(src));
  82s       |                               ^~~~~~~~~~~~~~~
  82s x86_64-linux-gnu-gcc -DHAVE_CONFIG_H -I.   -I. -I./lib -I. -I./lib
-DLIBEXEC_DIR=\"/usr/lib/cyrus/bin\" -DSBIN_DIR=\"/usr/lib/cyrus/bin\" 
-DSYSCONF_DIR=\"/etc\" -DHAVE_CONFIG_H      -I/usr/include/libxml2 
        -I/usr/include/postgresql -Wdate-time -D_FORTIFY_SOURCE=2
-I/usr/include -DBUILD_LMTPD -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -c -o 
imap/lmtpd-jmap_mail_query.o `test -f 'imap/jmap_mail_query.c' || echo
'./'`imap/jmap_mail_query.c
  82s x86_64-linux-gnu-gcc -DHAVE_CONFIG_H -I.   -I. -I./lib -I. -I./lib
-DLIBEXEC_DIR=\"/usr/lib/cyrus/bin\" -DSBIN_DIR=\"/usr/lib/cyrus/bin\" 
-DSYSCONF_DIR=\"/etc\" -DHAVE_CONFIG_H      -I/usr/include/libxml2 
        -I/usr/include/postgresql -Wdate-time -D_FORTIFY_SOURCE=2
-I/usr/include -DBUILD_LMTPD -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -c -o 
imap/lmtpd-jmap_mail_query_parse.o `test -f
'imap/jmap_mail_query_parse.c' || echo './'`imap/jmap_mail_query_parse.c
  82s /usr/include/unicode/unistr.h: In constructor
'icu_78::UnicodeString::UnicodeString(const S&)':
  82s /usr/include/unicode/unistr.h:3340:24: error:
'toU16StringViewNullable' is not a member of 'icu_78::internal'
[-Wtemplate-body]
  82s  3340 |     doAppend(internal::toU16StringViewNullable(text));
  82s       |                        ^~~~~~~~~~~~~~~~~~~~~~~
  82s /usr/include/unicode/unistr.h: In static member function 'static
icu_78::UnicodeString icu_78::UnicodeString::readOnlyAlias(const S&)':
  82s /usr/include/unicode/unistr.h:3663:53: error: 'toU16StringView' is
not a member of 'icu_78::internal' [-Wtemplate-body]
  82s  3663 |     return
readOnlyAliasFromU16StringView(internal::toU16StringView(text));
  82s       |
^~~~~~~~~~~~~~~
  82s /usr/include/unicode/unistr.h: At global scope:
  82s /usr/include/unicode/unistr.h:4178:21: error: 'enable_if_t' in
namespace 'std' does not name a template type
  82s  4178 |     typename =
std::enable_if_t<ConvertibleToU16StringView<S> && std::is_same_v<US,
UnicodeString>>>
  82s       |                     ^~~~~~~~~~~
  82s /usr/include/unicode/unistr.h:4178:16: note: 'std::enable_if_t' is
only available from C++14 onwards
  82s  4178 |     typename =
std::enable_if_t<ConvertibleToU16StringView<S> && std::is_same_v<US,
UnicodeString>>>
  82s       |                ^~~
  82s /usr/include/unicode/unistr.h:4178:32: error: expected '>' before
'<' token
  82s  4178 |     typename =
std::enable_if_t<ConvertibleToU16StringView<S> && std::is_same_v<US,
UnicodeString>>>
  82s       |                                ^
  82s /usr/include/unicode/unistr.h: In function 'icu_78::UnicodeString
icu_78::operator+(const US&, const S&)':
  82s /usr/include/unicode/unistr.h:4180:46: error: 'toU16StringView' is
not a member of 'icu_78::internal' [-Wtemplate-body]
  82s  4180 |   return unistr_internalConcat(s1,
internal::toU16StringView(s2));
  82s       |                                              ^~~~~~~~~~~~~~~
  82s /usr/include/unicode/unistr.h: At global scope:
  82s /usr/include/unicode/unistr.h:4186:53: error:
'std::u16string_view' has not been declared; did you mean 'std::u16string'?
  82s  4186 | unistr_internalConcat(const UnicodeString &s1,
std::u16string_view s2);
  82s       |
^~~~~~~~~~~~~~
  82s /usr/include/unicode/ures.h:268:1: note: invalid template non-type
parameter
  82s   268 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUResourceBundlePointer,
UResourceBundle, ures_close);
  82s       | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
  82s x86_64-linux-gnu-gcc -DHAVE_CONFIG_H -I.   -I. -I./lib -I. -I./lib
-DLIBEXEC_DIR=\"/usr/lib/cyrus/bin\" -DSBIN_DIR=\"/usr/lib/cyrus/bin\" 
-DSYSCONF_DIR=\"/etc\" -DHAVE_CONFIG_H      -I/usr/include/libxml2 
        -I/usr/include/postgresql -Wdate-time -D_FORTIFY_SOURCE=2
-I/usr/include -DBUILD_LMTPD -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -c -o 
imap/lmtpd-dav_util.o `test -f 'imap/dav_util.c' || echo
'./'`imap/dav_util.c
  82s /usr/include/unicode/ucal.h:803:1: note: invalid template non-type
parameter
  82s   803 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUCalendarPointer,
UCalendar, ucal_close);
  82s       | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
  82s x86_64-linux-gnu-gcc -DHAVE_CONFIG_H -I.   -I. -I./lib -I. -I./lib
-DLIBEXEC_DIR=\"/usr/lib/cyrus/bin\" -DSBIN_DIR=\"/usr/lib/cyrus/bin\" 
-DSYSCONF_DIR=\"/etc\" -DHAVE_CONFIG_H      -I/usr/include/libxml2 
        -I/usr/include/postgresql -Wdate-time -D_FORTIFY_SOURCE=2
-I/usr/include -DBUILD_LMTPD -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -c -o 
imap/lmtpd-jmap_notif.o `test -f 'imap/jmap_notif.c' || echo
'./'`imap/jmap_notif.c
  83s x86_64-linux-gnu-gcc -DHAVE_CONFIG_H -I.   -I. -I./lib -I. -I./lib
-DLIBEXEC_DIR=\"/usr/lib/cyrus/bin\" -DSBIN_DIR=\"/usr/lib/cyrus/bin\" 
-DSYSCONF_DIR=\"/etc\" -DHAVE_CONFIG_H      -I/usr/include/libxml2 
        -I/usr/include/postgresql -Wdate-time -D_FORTIFY_SOURCE=2
-I/usr/include -DBUILD_LMTPD -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -c -o 
imap/lmtpd-jmap_ical.o `test -f 'imap/jmap_ical.c' || echo
'./'`imap/jmap_ical.c
  83s x86_64-linux-gnu-gcc -DHAVE_CONFIG_H -I.   -I. -I./lib -I. -I./lib
-DLIBEXEC_DIR=\"/usr/lib/cyrus/bin\" -DSBIN_DIR=\"/usr/lib/cyrus/bin\" 
-DSYSCONF_DIR=\"/etc\" -DHAVE_CONFIG_H      -I/usr/include/libxml2 
        -I/usr/include/postgresql -Wdate-time -D_FORTIFY_SOURCE=2
-I/usr/include -DBUILD_LMTPD -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -c -o 
imap/lmtpd-jcal.o `test -f 'imap/jcal.c' || echo './'`imap/jcal.c
  83s x86_64-linux-gnu-gcc -DHAVE_CONFIG_H -I.   -I. -I./lib -I. -I./lib
-DLIBEXEC_DIR=\"/usr/lib/cyrus/bin\" -DSBIN_DIR=\"/usr/lib/cyrus/bin\" 
-DSYSCONF_DIR=\"/etc\" -DHAVE_CONFIG_H      -I/usr/include/libxml2 
        -I/usr/include/postgresql -Wdate-time -D_FORTIFY_SOURCE=2
-I/usr/include -DBUILD_LMTPD -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -g -O2 
-Werror=implicit-function-declaration 
-ffile-prefix-map=/tmp/autopkgtest.fzJNDR/build.GHq/src=. 
-fstack-protector-strong -fstack-clash-protection -Wformat 
-Werror=format-security -fcf-protection -DPCRE2POSIX_SHARED -c -o 
imap/lmtpd-xcal.o `test -f 'imap/xcal.c' || echo './'`imap/xcal.c
  83s make[2]: *** [Makefile:7329: imap/libcyrus_imap_la-icu_wrap.lo]
Error 1
  83s make[2]: *** Waiting for unfinished jobs....
  83s In file included from /usr/include/unicode/unistr.h:37,
  83s                  from imap/xapian_wrap.cpp:29:
  83s /usr/include/unicode/char16ptr.h:271:38: error: 'enable_if_t' in
namespace 'std' does not name a template type
  83s   271 | template<typename T, typename =
std::enable_if_t<std::is_same_v<T, UChar>>>
  83s       |                                      ^~~~~~~~~~~
  83s /usr/include/unicode/char16ptr.h:271:33: note: 'std::enable_if_t'
is only available from C++14 onwards
  83s   271 | template<typename T, typename =
std::enable_if_t<std::is_same_v<T, UChar>>>
  83s       |                                 ^~~
  83s /usr/include/unicode/char16ptr.h:271:49: error: expected '>'
before '<' token
  83s   271 | template<typename T, typename =
std::enable_if_t<std::is_same_v<T, UChar>>>
  83s       |                                                 ^
  83s /usr/include/unicode/char16ptr.h: In function 'const char16_t*
icu_78::uprv_char16PtrFromUChar(const T*)':
  83s /usr/include/unicode/char16ptr.h:273:24: error: 'is_same_v' is not
a member of 'std'; did you mean 'is_same'? [-Wtemplate-body]
  83s   273 |     if constexpr (std::is_same_v<UChar, char16_t>) {
  83s       |                        ^~~~~~~~~
  83s       |                        is_same
  83s /usr/include/unicode/char16ptr.h:273:39: error: expected
primary-expression before ',' token [-Wtemplate-body]
  83s   273 |     if constexpr (std::is_same_v<UChar, char16_t>) {
  83s       |                                       ^
  83s /usr/include/unicode/char16ptr.h:273:41: error: expected
primary-expression before 'char16_t' [-Wtemplate-body]
  83s   273 |     if constexpr (std::is_same_v<UChar, char16_t>) {
  83s       |                                         ^~~~~~~~
  83s /usr/include/unicode/char16ptr.h:273:40: error: expected ')'
before 'char16_t' [-Wtemplate-body]
  83s   273 |     if constexpr (std::is_same_v<UChar, char16_t>) {
  83s       |                  ~                     ^~~~~~~~~
  83s       |                                        )
  83s /usr/include/unicode/char16ptr.h: At global scope:
  83s /usr/include/unicode/char16ptr.h:386:10: error: 'is_convertible_v'
is not a member of 'std'; did you mean 'is_convertible'?
  83s   386 |     std::is_convertible_v<T, std::u16string_view>
  83s       |          ^~~~~~~~~~~~~~~~
  83s       |          is_convertible
  83s /usr/include/unicode/char16ptr.h:386:28: error: expected
primary-expression before ',' token
  83s   386 |     std::is_convertible_v<T, std::u16string_view>
  83s       |                            ^
  83s /usr/include/unicode/char16ptr.h:400:13: error: 'u16string_view'
in namespace 'std' does not name a type; did you mean 'u16string'?
  83s   400 | inline std::u16string_view
toU16StringView(std::u16string_view sv) { return sv; }
  83s       |             ^~~~~~~~~~~~~~
  83s       |             u16string
  83s /usr/include/unicode/char16ptr.h:408:13: error: 'u16string_view'
in namespace 'std' does not name a type; did you mean 'u16string'?
  83s   408 | inline std::u16string_view
toU16StringView(std::basic_string_view<uint16_t> sv) {
  83s       |             ^~~~~~~~~~~~~~
  83s       |             u16string
  83s /usr/include/unicode/char16ptr.h:429:36: error: 'enable_if_t' in
namespace 'std' does not name a template type
  83s   429 |           typename = typename
std::enable_if_t<!std::is_pointer_v<std::remove_reference_t<T>>>>
  83s       |                                    ^~~~~~~~~~~
  83s /usr/include/unicode/char16ptr.h:429:36: note: 'std::enable_if_t'
is only available from C++14 onwards
  83s /usr/include/unicode/char16ptr.h:429:47: error: expected '>'
before '<' token
  83s   429 |           typename = typename
std::enable_if_t<!std::is_pointer_v<std::remove_reference_t<T>>>>
  83s       |                                               ^
  83s /usr/include/unicode/char16ptr.h:430:13: error: 'u16string_view'
in namespace 'std' does not name a type; did you mean 'u16string'?
  83s   430 | inline std::u16string_view toU16StringViewNullable(const
T& text) {
  83s       |             ^~~~~~~~~~~~~~
  83s       |             u16string
  83s /usr/include/unicode/char16ptr.h:439:36: error: 'enable_if_t' in
namespace 'std' does not name a template type
  83s   439 |           typename = typename
std::enable_if_t<std::is_pointer_v<std::remove_reference_t<T>>>,
  83s       |                                    ^~~~~~~~~~~
  83s /usr/include/unicode/char16ptr.h:439:36: note: 'std::enable_if_t'
is only available from C++14 onwards
  83s /usr/include/unicode/char16ptr.h:439:47: error: expected '>'
before '<' token
  83s   439 |           typename = typename
std::enable_if_t<std::is_pointer_v<std::remove_reference_t<T>>>,
  83s       |                                               ^
  83s /usr/include/unicode/char16ptr.h:441:13: error: 'u16string_view'
in namespace 'std' does not name a type; did you mean 'u16string'?
  83s   441 | inline std::u16string_view toU16StringViewNullable(const
T& text) {
  83s       |             ^~~~~~~~~~~~~~
  83s       |             u16string
  83s In file included from /usr/include/unicode/unistr.h:40:
  83s /usr/include/unicode/stringpiece.h:134:29: error: 'enable_if_t' in
namespace 'std' does not name a template type
  83s   134 |             typename = std::enable_if_t<
  83s       |                             ^~~~~~~~~~~
  83s /usr/include/unicode/stringpiece.h:134:24: note:
'std::enable_if_t' is only available from C++14 onwards
  83s   134 |             typename = std::enable_if_t<
  83s       |                        ^~~
  83s /usr/include/unicode/stringpiece.h:134:40: error: expected '>'
before '<' token
  83s   134 |             typename = std::enable_if_t<
  83s       |                                        ^
  83s /usr/include/unicode/stringpiece.h:185:19: error: expected
type-specifier
  83s   185 |   inline operator std::string_view() const {
  83s       |                   ^~~
  83s In file included from /usr/include/unicode/unistr.h:41:
  83s /usr/include/unicode/bytestream.h: In member function 'virtual
void icu_78::StringByteSink<StringClass>::Append(const char*, int32_t)':
  83s /usr/include/unicode/bytestream.h:320:24: error: 'is_same_v' is
not a member of 'std'; did you mean 'is_same'? [-Wtemplate-body]
  83s   320 |     if constexpr (std::is_same_v<Unit, char>) {
  83s       |                        ^~~~~~~~~
  83s       |                        is_same
  83s /usr/include/unicode/bytestream.h:320:38: error: expected
primary-expression before ',' token [-Wtemplate-body]
  83s   320 |     if constexpr (std::is_same_v<Unit, char>) {
  83s       |                                      ^
  83s /usr/include/unicode/bytestream.h:320:40: error: expected
primary-expression before 'char' [-Wtemplate-body]
  83s   320 |     if constexpr (std::is_same_v<Unit, char>) {
  83s       |                                        ^~~~
  83s /usr/include/unicode/bytestream.h:320:40: error: expected ')'
before 'char' [-Wtemplate-body]
  83s /usr/include/unicode/bytestream.h:320:18: note: to match this '('
  83s   320 |     if constexpr (std::is_same_v<Unit, char>) {
  83s       |                  ^
  83s /usr/include/unicode/unistr.h: At global scope:
  83s /usr/include/unicode/unistr.h:354:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  83s   354 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                        ^~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:354:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  83s   354 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                   ^~~
  83s /usr/include/unicode/unistr.h:354:51: error: expected '>' before
'<' token
  83s   354 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                                   ^
  83s /usr/include/unicode/unistr.h:387:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  83s   387 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                        ^~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:387:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  83s   387 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                   ^~~
  83s /usr/include/unicode/unistr.h:387:51: error: expected '>' before
'<' token
  83s   387 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                                   ^
  83s /usr/include/unicode/unistr.h:1928:37: error: 'u16string_view' in
namespace 'std' does not name a type; did you mean 'u16string'?
  83s  1928 |   using unspecified_iterator =
std::u16string_view::const_iterator;
  83s       |                                     ^~~~~~~~~~~~~~
  83s       |                                     u16string
  83s /usr/include/unicode/unistr.h:1929:45: error: 'u16string_view' in
namespace 'std' does not name a type; did you mean 'u16string'?
  83s  1929 |   using unspecified_reverse_iterator =
std::u16string_view::const_reverse_iterator;
  83s       |                                             ^~~~~~~~~~~~~~
  83s       |                                             u16string
  83s /usr/include/unicode/unistr.h:1937:3: error:
'unspecified_iterator' does not name a type
  83s  1937 |   unspecified_iterator begin() const { return
std::u16string_view(*this).begin(); }
  83s       |   ^~~~~~~~~~~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:1943:3: error:
'unspecified_iterator' does not name a type
  83s  1943 |   unspecified_iterator end() const { return
std::u16string_view(*this).end(); }
  83s       |   ^~~~~~~~~~~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:1949:3: error:
'unspecified_reverse_iterator' does not name a type
  83s  1949 |   unspecified_reverse_iterator rbegin() const { return
std::u16string_view(*this).rbegin(); }
  83s       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:1955:3: error:
'unspecified_reverse_iterator' does not name a type
  83s  1955 |   unspecified_reverse_iterator rend() const { return
std::u16string_view(*this).rend(); }
  83s       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:2021:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  83s  2021 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                        ^~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:2021:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  83s  2021 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                   ^~~
  83s /usr/include/unicode/unistr.h:2021:51: error: expected '>' before
'<' token
  83s  2021 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                                   ^
  83s /usr/include/unicode/unistr.h:2286:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  83s  2286 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                        ^~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:2286:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  83s  2286 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                   ^~~
  83s /usr/include/unicode/unistr.h:2286:51: error: expected '>' before
'<' token
  83s  2286 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                                   ^
  83s /usr/include/unicode/unistr.h:2357:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  83s  2357 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                        ^~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:2357:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  83s  2357 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                   ^~~
  83s /usr/include/unicode/unistr.h:2357:51: error: expected '>' before
'<' token
  83s  2357 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                                   ^
  83s /usr/include/unicode/unistr.h:3101:19: error: expected type-specifier
  83s  3101 |   inline operator std::u16string_view() const {
  83s       |                   ^~~
  83s /usr/include/unicode/unistr.h:3337:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  83s  3337 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                        ^~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:3337:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  83s  3337 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                   ^~~
  83s /usr/include/unicode/unistr.h:3337:51: error: expected '>' before
'<' token
  83s  3337 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                                   ^
  83s /usr/include/unicode/unistr.h:3661:40: error: 'enable_if_t' in
namespace 'std' does not name a template type
  83s  3661 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                        ^~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:3661:35: note: 'std::enable_if_t' is
only available from C++14 onwards
  83s  3661 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                   ^~~
  83s /usr/include/unicode/unistr.h:3661:51: error: expected '>' before
'<' token
  83s  3661 |   template<typename S, typename =
std::enable_if_t<ConvertibleToU16StringView<S>>>
  83s       |                                                   ^
  83s /usr/include/unicode/unistr.h:3816:60: error:
'std::u16string_view' has not been declared; did you mean 'std::u16string'?
  83s  3816 |   static UnicodeString
readOnlyAliasFromU16StringView(std::u16string_view text);
  83s       |
^~~~~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:3932:64: error:
'std::u16string_view' has not been declared; did you mean 'std::u16string'?
  83s  3932 |   UnicodeString& doReplace(int32_t start, int32_t length,
std::u16string_view src);
  83s       |
     ^~~~~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:3936:32: error:
'std::u16string_view' has not been declared; did you mean 'std::u16string'?
  83s  3936 |   UnicodeString& doAppend(std::u16string_view src);
  83s       |                                ^~~~~~~~~~~~~~
  83s /usr/include/unicode/unistr.h: In member function 'bool
icu_78::UnicodeString::operator==(const S&) const':
  83s /usr/include/unicode/unistr.h:356:10: error: 'u16string_view' is
not a member of 'std'; did you mean 'u16string'? [-Wtemplate-body]
  83s   356 |     std::u16string_view sv(internal::toU16StringView(text));
  83s       |          ^~~~~~~~~~~~~~
  83s       |          u16string
  83s /usr/include/unicode/unistr.h:358:46: error: 'sv' was not declared
in this scope [-Wtemplate-body]
  83s   358 |     return !isBogus() && (len = length()) == sv.length()
&& doEquals(sv.data(), len);
  83s       |                                              ^~
  83s /usr/include/unicode/unistr.h: In member function
'icu_78::UnicodeString& icu_78::UnicodeString::operator=(const S&)':
  83s /usr/include/unicode/unistr.h:2024:45: error: 'toU16StringView' is
not a member of 'icu_78::internal' [-Wtemplate-body]
  83s  2024 |     return doReplace(0, length(),
internal::toU16StringView(src));
  83s       |                                             ^~~~~~~~~~~~~~~
  83s /usr/include/unicode/unistr.h: In member function
'icu_78::UnicodeString& icu_78::UnicodeString::operator+=(const S&)':
  83s /usr/include/unicode/unistr.h:2288:31: error: 'toU16StringView' is
not a member of 'icu_78::internal' [-Wtemplate-body]
  83s  2288 |     return doAppend(internal::toU16StringView(src));
  83s       |                               ^~~~~~~~~~~~~~~
  83s /usr/include/unicode/unistr.h: In member function
'icu_78::UnicodeString& icu_78::UnicodeString::append(const S&)':
  83s /usr/include/unicode/unistr.h:2359:31: error: 'toU16StringView' is
not a member of 'icu_78::internal' [-Wtemplate-body]
  83s  2359 |     return doAppend(internal::toU16StringView(src));
  83s       |                               ^~~~~~~~~~~~~~~
  83s /usr/include/unicode/unistr.h: In constructor
'icu_78::UnicodeString::UnicodeString(const S&)':
  83s /usr/include/unicode/unistr.h:3340:24: error:
'toU16StringViewNullable' is not a member of 'icu_78::internal'
[-Wtemplate-body]
  83s  3340 |     doAppend(internal::toU16StringViewNullable(text));
  83s       |                        ^~~~~~~~~~~~~~~~~~~~~~~
  83s /usr/include/unicode/unistr.h: In static member function 'static
icu_78::UnicodeString icu_78::UnicodeString::readOnlyAlias(const S&)':
  83s /usr/include/unicode/unistr.h:3663:53: error: 'toU16StringView' is
not a member of 'icu_78::internal' [-Wtemplate-body]
  83s  3663 |     return
readOnlyAliasFromU16StringView(internal::toU16StringView(text));
  83s       |
^~~~~~~~~~~~~~~
  83s /usr/include/unicode/unistr.h: At global scope:
  83s /usr/include/unicode/unistr.h:4178:21: error: 'enable_if_t' in
namespace 'std' does not name a template type
  83s  4178 |     typename =
std::enable_if_t<ConvertibleToU16StringView<S> && std::is_same_v<US,
UnicodeString>>>
  83s       |                     ^~~~~~~~~~~
  83s /usr/include/unicode/unistr.h:4178:16: note: 'std::enable_if_t' is
only available from C++14 onwards
  83s  4178 |     typename =
std::enable_if_t<ConvertibleToU16StringView<S> && std::is_same_v<US,
UnicodeString>>>
  83s       |                ^~~
  83s /usr/include/unicode/unistr.h:4178:32: error: expected '>' before
'<' token
  83s  4178 |     typename =
std::enable_if_t<ConvertibleToU16StringView<S> && std::is_same_v<US,
UnicodeString>>>
  83s       |                                ^
  83s /usr/include/unicode/unistr.h: In function 'icu_78::UnicodeString
icu_78::operator+(const US&, const S&)':
  83s /usr/include/unicode/unistr.h:4180:46: error: 'toU16StringView' is
not a member of 'icu_78::internal' [-Wtemplate-body]
  83s  4180 |   return unistr_internalConcat(s1,
internal::toU16StringView(s2));
  83s       |                                              ^~~~~~~~~~~~~~~
  83s /usr/include/unicode/unistr.h: At global scope:
  83s /usr/include/unicode/unistr.h:4186:53: error:
'std::u16string_view' has not been declared; did you mean 'std::u16string'?
  83s  4186 | unistr_internalConcat(const UnicodeString &s1,
std::u16string_view s2);
  83s       |
^~~~~~~~~~~~~~
  83s In file included from /usr/include/unicode/locid.h:42,
  83s                  from imap/xapian_wrap.cpp:30:
  83s /usr/include/unicode/localpointer.h:559:26: error: parameter
declared 'auto'
  83s   559 | template <typename Type, auto closeFunction>
  83s       |                          ^~~~
  83s /usr/include/unicode/localpointer.h:571:76: error: template
argument 2 is invalid [-Wtemplate-body]
  83s   571 |     explicit LocalOpenPointer(std::unique_ptr<Type,
decltype(closeFunction)> &&p)
  83s       |
                 ^
  83s /usr/include/unicode/localpointer.h:581:78: error: template
argument 2 is invalid [-Wtemplate-body]
  83s   581 |     LocalOpenPointer &operator=(std::unique_ptr<Type,
decltype(closeFunction)> &&p) {
  83s       |
                   ^
  83s /usr/include/unicode/localpointer.h:597:59: error: template
argument 2 is invalid [-Wtemplate-body]
  83s   597 |     operator std::unique_ptr<Type,
decltype(closeFunction)> () && {
  83s       |                                                           ^
  83s /usr/include/unicode/uenum.h:69:1: note: invalid template non-type
parameter
  83s    69 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUEnumerationPointer,
UEnumeration, uenum_close);
  83s       | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
  83s /usr/include/unicode/locid.h:1207:24: error: 'std::string_view'
has not been declared
  83s  1207 |         void init(std::string_view language,
  83s       |                        ^~~~~~~~~~~
  83s /usr/include/unicode/locid.h:1207:24: note: 'std::string_view' is
only available from C++17 onwards
  83s /usr/include/unicode/locid.h:1208:24: error: 'std::string_view'
has not been declared
  83s  1208 |                   std::string_view script,
  83s       |                        ^~~~~~~~~~~
  83s /usr/include/unicode/locid.h:1208:24: note: 'std::string_view' is
only available from C++17 onwards
  83s /usr/include/unicode/locid.h:1209:24: error: 'std::string_view'
has not been declared
  83s  1209 |                   std::string_view region,
  83s       |                        ^~~~~~~~~~~
  83s /usr/include/unicode/locid.h:1209:24: note: 'std::string_view' is
only available from C++17 onwards
  83s /usr/include/unicode/locid.h:1213:31: error: 'std::string_view'
has not been declared
  83s  1213 |                          std::string_view language,
  83s       |                               ^~~~~~~~~~~
  83s /usr/include/unicode/locid.h:1213:31: note: 'std::string_view' is
only available from C++17 onwards
  83s /usr/include/unicode/locid.h:1214:31: error: 'std::string_view'
has not been declared
  83s  1214 |                          std::string_view script,
  83s       |                               ^~~~~~~~~~~
  83s /usr/include/unicode/locid.h:1214:31: note: 'std::string_view' is
only available from C++17 onwards
  83s /usr/include/unicode/locid.h:1215:31: error: 'std::string_view'
has not been declared
  83s  1215 |                          std::string_view region) {
  83s       |                               ^~~~~~~~~~~
  83s /usr/include/unicode/locid.h:1215:31: note: 'std::string_view' is
only available from C++17 onwards
  83s /usr/include/unicode/locid.h:1251:30: error: expected ')' before
'language'
  83s  1251 |         Heap(std::string_view language,
  83s       |             ~                ^~~~~~~~~
  83s       |                              )
  83s /usr/include/unicode/locid.h:1297:9: error: 'visit' function uses
'auto' type specifier without trailing return type
  83s  1297 |         auto visit(BogusFn bogusFn, NestFn nestFn, HeapFn
heapFn, Args... args) const;
  83s       |         ^~~~
  83s /usr/include/unicode/locid.h:1297:9: note: deduced return type
only available with '-std=c++14' or '-std=gnu++14'
  83s /usr/include/unicode/locid.h: In static member function 'static
bool icu_78::Locale::Nest::fits(int32_t, int, int, int)':
  83s /usr/include/unicode/locid.h:1217:29: error: request for member
'size' in 'language', which is of non-class type 'int'
  83s  1217 |                    language.size() < sizeof Nest::language &&
  83s       |                             ^~~~
  83s /usr/include/unicode/locid.h:1218:27: error: request for member
'size' in 'script', which is of non-class type 'int'
  83s  1218 |                    script.size() < sizeof Nest::script &&
  83s       |                           ^~~~
  83s /usr/include/unicode/locid.h:1219:27: error: request for member
'size' in 'region', which is of non-class type 'int'
  83s  1219 |                    region.size() < sizeof Nest::region;
  83s       |                           ^~~~
  84s make[2]: *** [Makefile:7336: imap/libcyrus_imap_la-xapian_wrap.lo]
Error 1
  87s make[2]: Leaving directory '/tmp/autopkgtest.fzJNDR/build.GHq/src'
  87s make[1]: Leaving directory '/tmp/autopkgtest.fzJNDR/build.GHq/src'
  87s make[1]: *** [Makefile:7670: check-recursive] Error 1
  87s make: *** [Makefile:7972: check] Error 2
  87s dh_auto_test: error: make -j48 check TESTSUITEFLAGS="-j48
--verbose" VERBOSE=1 returned exit code 2
  87s autopkgtest [23:21:48]: test unit-test

#1143973#14
Date:
2026-08-09 16:09:00 UTC
From:
To:
 >

Not a member of the Cyrus team, but I looked into this. Only
`autopkgtest` was affected. The build is fine, because `dh_autoreconf`
regenerates `configure` with autoconf 2.73, while
`debian/tests/unit-test` bypassed the dh sequencer and used the
autoconf-2.71 configure from the tarball, which still forces
`-std=gnu++11` under g++-16 (cf. bug #1133694). ICU's headers then fail,
as they need C++17.

MR: https://salsa.debian.org/debian/cyrus-imapd/-/merge_requests/25

The Debian Cyrus Team and the gcc-defaults maintainers would be the best
judges regarding adding `Breaks`.

Kind regards,

     Edmund Lodewijks

#1143973#19
Date:
2026-08-17 13:50:38 UTC
From:
To:
Hi all,

cyrus-imapd 3.12.3-2 is flagged for autoremoval from testing on
2026-09-21, for two independent reasons:

   - #1143973, a cyrus-imapd RC bug (autopkgtest fails with gcc-defaults
     from unstable), and
   - #1143939, a clamav CVE bug, which cyrus-imapd build-depends on via
     libclamav-dev.

I have prepared 3.12.3-3, which fixes the first of these (it was already in
Salsa as MR25). I cannot upload, so I am looking for someone to review and
upload it.

   MR:      https://salsa.debian.org/debian/cyrus-imapd/-/merge_requests/25
   Package: https://mentors.debian.net/package/cyrus-imapd/

A debdiff vs. 3.12.3-2 is attached.

I have reproduced and verified the fix locally with autopkgtest in an
unstable chroot (g++ 4:16.1.0-3, gcc-16 16.2.0-1),
using -B/--no-built-binaries so that the binaries come from the archive,
as it is done on ci.debian.net (it took me a while to figure this one out!).

Beyond fixing the RC bug, this removes the last place where an upstream's
pre-generated `configure` is executed, instead of regenerating it. I think
this is important with reference to the xz-utils backdoor from a while ago.

The upload also includes a Lintian fix that was merged into master on Salsa
("Fix lintian: mismatched-override"). There are a few more Lintian fix
MR's on
Salsa that have not (yet) been merged.

Full changelog:

   cyrus-imapd (3.12.3-3) unstable; urgency=medium

     * d/tests/unit-test: run dh_autoreconf so the autopkgtest configures
       with the same autoconf as the build, fixing the C++ standard
       mismatch under gcc-16 (Closes: #1143973)
     * Fix lintian: mismatched-override

I hope this helps, and will see if I can assist the clamav team so that
cyrus-imapd will not be removed.

Kind regards,

     Edmund

#1143973#24
Date:
2026-08-17 18:21:20 UTC
From:
To:
We believe that the bug you reported is fixed in the latest version of
cyrus-imapd, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1143973@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Xavier Guimard <yadd@debian.org> (supplier of updated cyrus-imapd package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
Format: 1.8
Date: Mon, 17 Aug 2026 19:41:07 +0200
Source: cyrus-imapd
Architecture: source
Version: 3.12.3-3
Distribution: unstable
Urgency: medium
Maintainer: Debian Cyrus Team <team+cyrus@tracker.debian.org>
Changed-By: Xavier Guimard <yadd@debian.org>
Closes: 1143973
Changes:
 cyrus-imapd (3.12.3-3) unstable; urgency=medium
 .
   [ Edmund Lodewijks ]
   * Fix lintian: mismatched-override
   * d/tests/unit-test: run dh_autoreconf (Closes: #1143973)
Checksums-Sha1:
 05e824d13b331307344428b1ba5a55a520bad91f 5149 cyrus-imapd_3.12.3-3.dsc
 58db739a71be9822bb6eeca8a1966ac89fa083b7 87060 cyrus-imapd_3.12.3-3.debian.tar.xz
Checksums-Sha256:
 46d9a248816a70740ffd85ec49d6b746fd2c1bfa0f9aafd92e9ccfe702af5ed4 5149 cyrus-imapd_3.12.3-3.dsc
 d0f8781712173b76e6d4d006a2ead831e9e65d631ce80f19ff3c20a7e119675c 87060 cyrus-imapd_3.12.3-3.debian.tar.xz
Files:
 e4cb9d2b45c1753f97536706a53c6fa5 5149 mail optional cyrus-imapd_3.12.3-3.dsc
 b10e18bca6071b0f103f5b2e112a7fe2 87060 mail optional cyrus-imapd_3.12.3-3.debian.tar.xz
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEAN/li4tVV3nRAF7J9tdMp8mZ7ukFAmqDSIcACgkQ9tdMp8mZ
7ulPXw//WUUS8c0pf6kg5NspQB+2ZUa9w220GXPB9O1igMfPHzsF/eVsGKD1ZL/5
c858Rc/siGDWQApYBbmN6IgG4k3cGz92lLQ9ECtxno1qslIoUdvMY1zDQj1eQydI
WyW7Y1Ur3f0VA9hp+bHPjxr/NpolU+mMfr3M8+AlDiT9iwcWg1hlJa8h4FfPNo36
gWrhRgAZUGAZjBDlHHKUn5KZUgVglo195nmPbyQZFMWsuHN7ywBV0EHk+EEtkeLo
0hATvILIDS0FeuNy+z0uJhi30lJ48VGwI5HJ2Tz31/Ob3p6PzrtRwBcvCtYUeCsB
BCebATe6D2kc0jNgWAJvXE0OnU/P4KIIE4nWtpEeIQi103ZzqGPw6wFemTBIKYY5
sHFRw+25vxREkqmoH/9kIdRkcdDOk1MUMGOM+F8Q7+sdaG7YDhhusZ2cMZ+Qclki
dvBYXc9C4dYVYeh3LA0nDgX1393EuRbhMhSrRvrFFrtQ/GVYFvuhsFgyb1nm9bwk
e9igXJXvMjDEThjuC0vz6hZNlndUCHrlAVDsvJ4rFKvuoODZGhUX3fiDvQDgqgpC
kvMxSDxV4OoyvgqX0bNT6+WFBokjdJ4oh/3PQ/oRJUKJXJ9s3JgKhnaHbrNGUy6J
DUZp1aQ6vhkfSwSUnuKgmceN/lIq+Zg6+j3vkNhHTw9uL/v4S6Q=
=aN8k
-----END PGP SIGNATURE-----