Source: grpc
Version: 1.51.1-6
Severity: serious
Justification: FTBFS
Tags: forky sid ftbfs
User: [email protected]
Usertags: ftbfs-20250918 ftbfs-forky

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.

The full build log is available from:
http://qa-logs.debian.net/2025/09/18/grpc_1.51.1-6_unstable.log

All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20250918;[email protected]
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20250918&[email protected]&allbugs=1&cseverity=1&ctags=1&caffected=1#results

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.

-- 
Relevant part of the build log (hopefully):
> /usr/bin/c++  -I/build/reproducible-path/grpc-1.51.1/include 
> -I/build/reproducible-path/grpc-1.51.1 
> -I/build/reproducible-path/grpc-1.51.1/third_party/address_sorting/include 
> -I/build/reproducible-path/grpc-1.51.1/src/core/ext/upb-generated 
> -I/build/reproducible-path/grpc-1.51.1/src/core/ext/upbdefs-generated 
> -I/build/reproducible-path/grpc-1.51.1/third_party/upb 
> -I/build/reproducible-path/grpc-1.51.1/third_party/xxhash -g -O2 
> -ffile-prefix-map=/build/reproducible-path/grpc-1.51.1=. 
> -fstack-protector-strong -fstack-clash-protection -Wformat 
> -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2  
> -std=c++14 -fPIC -pthread -DNOMINMAX -MD -MT 
> CMakeFiles/grpc.dir/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc.o
>  -MF 
> CMakeFiles/grpc.dir/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc.o.d
>  -o 
> CMakeFiles/grpc.dir/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc.o
>  -c 
> /build/reproducible-path/grpc-1.51.1/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_manager.cc
> In file included from 
> /build/reproducible-path/grpc-1.51.1/src/core/lib/matchers/matchers.h:28,
>                  from 
> /build/reproducible-path/grpc-1.51.1/src/core/ext/xds/xds_certificate_provider.h:39,
>                  from 
> /build/reproducible-path/grpc-1.51.1/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc:41:
> /usr/include/re2/re2.h:846:45: error: ‘optional’ is not a member of ‘std’
>   846 | template <typename T> struct Parse3ary<std::optional<T>> : public 
> Parse3ary<T> {};
>       |                                             ^~~~~~~~
> /usr/include/re2/re2.h:846:45: note: ‘std::optional’ is only available from 
> C++17 onwards
> /usr/include/re2/re2.h:846:45: error: ‘optional’ is not a member of ‘std’
> /usr/include/re2/re2.h:846:45: note: ‘std::optional’ is only available from 
> C++17 onwards
> /usr/include/re2/re2.h:846:54: error: template argument 1 is invalid
>   846 | template <typename T> struct Parse3ary<std::optional<T>> : public 
> Parse3ary<T> {};
>       |                                                      ^
> /usr/include/re2/re2.h:846:55: error: expected unqualified-id before ‘>’ token
>   846 | template <typename T> struct Parse3ary<std::optional<T>> : public 
> Parse3ary<T> {};
>       |                                                       ^~
> /usr/include/re2/re2.h:847:45: error: ‘optional’ is not a member of ‘std’
>   847 | template <typename T> struct Parse4ary<std::optional<T>> : public 
> Parse4ary<T> {};
>       |                                             ^~~~~~~~
> /usr/include/re2/re2.h:847:45: note: ‘std::optional’ is only available from 
> C++17 onwards
> /usr/include/re2/re2.h:847:45: error: ‘optional’ is not a member of ‘std’
> /usr/include/re2/re2.h:847:45: note: ‘std::optional’ is only available from 
> C++17 onwards
> /usr/include/re2/re2.h:847:54: error: template argument 1 is invalid
>   847 | template <typename T> struct Parse4ary<std::optional<T>> : public 
> Parse4ary<T> {};
>       |                                                      ^
> /usr/include/re2/re2.h:847:55: error: expected unqualified-id before ‘>’ token
>   847 | template <typename T> struct Parse4ary<std::optional<T>> : public 
> Parse4ary<T> {};
>       |                                                       ^~
> /usr/include/re2/re2.h:850:44: error: ‘std::optional’ has not been declared
>   850 | bool Parse(const char* str, size_t n, std::optional<T>* dest) {
>       |                                            ^~~~~~~~
> /usr/include/re2/re2.h:850:44: note: ‘std::optional’ is only available from 
> C++17 onwards
> /usr/include/re2/re2.h:850:52: error: expected ‘,’ or ‘...’ before ‘<’ token
>   850 | bool Parse(const char* str, size_t n, std::optional<T>* dest) {
>       |                                                    ^
> /usr/include/re2/re2.h: In function ‘bool re2::re2_internal::Parse(const 
> char*, size_t, int)’:
> /usr/include/re2/re2.h:852:9: error: ‘dest’ was not declared in this scope 
> [-Wtemplate-body]
>   852 |     if (dest != NULL)
>       |         ^~~~
> /usr/include/re2/re2.h:858:9: error: ‘dest’ was not declared in this scope 
> [-Wtemplate-body]
>   858 |     if (dest != NULL)
>       |         ^~~~
> /usr/include/re2/re2.h: At global scope:
> /usr/include/re2/re2.h:866:44: error: ‘std::optional’ has not been declared
>   866 | bool Parse(const char* str, size_t n, std::optional<T>* dest, int 
> radix) {
>       |                                            ^~~~~~~~
> /usr/include/re2/re2.h:866:44: note: ‘std::optional’ is only available from 
> C++17 onwards
> /usr/include/re2/re2.h:866:52: error: expected ‘,’ or ‘...’ before ‘<’ token
>   866 | bool Parse(const char* str, size_t n, std::optional<T>* dest, int 
> radix) {
>       |                                                    ^
> /usr/include/re2/re2.h:866:6: error: redefinition of ‘template<class T> bool 
> re2::re2_internal::Parse(const char*, size_t, int)’
>   866 | bool Parse(const char* str, size_t n, std::optional<T>* dest, int 
> radix) {
>       |      ^~~~~
> /usr/include/re2/re2.h:850:6: note: ‘template<class T> bool 
> re2::re2_internal::Parse(const char*, size_t, int)’ previously declared here
>   850 | bool Parse(const char* str, size_t n, std::optional<T>* dest) {
>       |      ^~~~~
> [ 11%] Building CXX object 
> CMakeFiles/grpc_unsecure.dir/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc.o
> /usr/bin/c++  -I/build/reproducible-path/grpc-1.51.1/include 
> -I/build/reproducible-path/grpc-1.51.1 
> -I/build/reproducible-path/grpc-1.51.1/third_party/address_sorting/include 
> -I/build/reproducible-path/grpc-1.51.1/src/core/ext/upb-generated 
> -I/build/reproducible-path/grpc-1.51.1/src/core/ext/upbdefs-generated 
> -I/build/reproducible-path/grpc-1.51.1/third_party/upb 
> -I/build/reproducible-path/grpc-1.51.1/third_party/xxhash -g -O2 
> -ffile-prefix-map=/build/reproducible-path/grpc-1.51.1=. 
> -fstack-protector-strong -fstack-clash-protection -Wformat 
> -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2  
> -std=c++14 -fPIC -pthread -DNOMINMAX -MD -MT 
> CMakeFiles/grpc_unsecure.dir/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc.o
>  -MF 
> CMakeFiles/grpc_unsecure.dir/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc.o.d
>  -o 
> CMakeFiles/grpc_unsecure.dir/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc.o
>  -c 
> /build/reproducible-path/grpc-1.51.1/src/core/ext/filters/client_channel/lb_policy/weighted_target/weighted_target.cc
> [ 11%] Building CXX object 
> CMakeFiles/grpc_unsecure.dir/src/core/ext/filters/client_channel/local_subchannel_pool.cc.o
> /usr/bin/c++  -I/build/reproducible-path/grpc-1.51.1/include 
> -I/build/reproducible-path/grpc-1.51.1 
> -I/build/reproducible-path/grpc-1.51.1/third_party/address_sorting/include 
> -I/build/reproducible-path/grpc-1.51.1/src/core/ext/upb-generated 
> -I/build/reproducible-path/grpc-1.51.1/src/core/ext/upbdefs-generated 
> -I/build/reproducible-path/grpc-1.51.1/third_party/upb 
> -I/build/reproducible-path/grpc-1.51.1/third_party/xxhash -g -O2 
> -ffile-prefix-map=/build/reproducible-path/grpc-1.51.1=. 
> -fstack-protector-strong -fstack-clash-protection -Wformat 
> -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2  
> -std=c++14 -fPIC -pthread -DNOMINMAX -MD -MT 
> CMakeFiles/grpc_unsecure.dir/src/core/ext/filters/client_channel/local_subchannel_pool.cc.o
>  -MF 
> CMakeFiles/grpc_unsecure.dir/src/core/ext/filters/client_channel/local_subchannel_pool.cc.o.d
>  -o 
> CMakeFiles/grpc_unsecure.dir/src/core/ext/filters/client_channel/local_subchannel_pool.cc.o
>  -c 
> /build/reproducible-path/grpc-1.51.1/src/core/ext/filters/client_channel/local_subchannel_pool.cc
> In file included from 
> /build/reproducible-path/grpc-1.51.1/src/core/lib/matchers/matchers.h:28,
>                  from 
> /build/reproducible-path/grpc-1.51.1/src/core/ext/xds/xds_common_types.h:36,
>                  from 
> /build/reproducible-path/grpc-1.51.1/src/core/ext/xds/xds_cluster_specifier_plugin.h:32,
>                  from 
> /build/reproducible-path/grpc-1.51.1/src/core/ext/xds/xds_bootstrap_grpc.h:34,
>                  from 
> /build/reproducible-path/grpc-1.51.1/src/core/ext/filters/client_channel/lb_policy/xds/xds_cluster_impl.cc:45:
> /usr/include/re2/re2.h:846:45: error: ‘optional’ is not a member of ‘std’
>   846 | template <typename T> struct Parse3ary<std::optional<T>> : public 
> Parse3ary<T> {};
>       |                                             ^~~~~~~~
> /usr/include/re2/re2.h:846:45: note: ‘std::optional’ is only available from 
> C++17 onwards
> /usr/include/re2/re2.h:846:45: error: ‘optional’ is not a member of ‘std’
> /usr/include/re2/re2.h:846:45: note: ‘std::optional’ is only available from 
> C++17 onwards
> /usr/include/re2/re2.h:846:54: error: template argument 1 is invalid
>   846 | template <typename T> struct Parse3ary<std::optional<T>> : public 
> Parse3ary<T> {};
>       |                                                      ^
> /usr/include/re2/re2.h:846:55: error: expected unqualified-id before ‘>’ token
>   846 | template <typename T> struct Parse3ary<std::optional<T>> : public 
> Parse3ary<T> {};
>       |                                                       ^~
> /usr/include/re2/re2.h:847:45: error: ‘optional’ is not a member of ‘std’
>   847 | template <typename T> struct Parse4ary<std::optional<T>> : public 
> Parse4ary<T> {};
>       |                                             ^~~~~~~~
> /usr/include/re2/re2.h:847:45: note: ‘std::optional’ is only available from 
> C++17 onwards
> /usr/include/re2/re2.h:847:45: error: ‘optional’ is not a member of ‘std’
> /usr/include/re2/re2.h:847:45: note: ‘std::optional’ is only available from 
> C++17 onwards
> /usr/include/re2/re2.h:847:54: error: template argument 1 is invalid
>   847 | template <typename T> struct Parse4ary<std::optional<T>> : public 
> Parse4ary<T> {};
>       |                                                      ^
> /usr/include/re2/re2.h:847:55: error: expected unqualified-id before ‘>’ token
>   847 | template <typename T> struct Parse4ary<std::optional<T>> : public 
> Parse4ary<T> {};
>       |                                                       ^~
> /usr/include/re2/re2.h:850:44: error: ‘std::optional’ has not been declared
>   850 | bool Parse(const char* str, size_t n, std::optional<T>* dest) {
>       |                                            ^~~~~~~~
> /usr/include/re2/re2.h:850:44: note: ‘std::optional’ is only available from 
> C++17 onwards
> /usr/include/re2/re2.h:850:52: error: expected ‘,’ or ‘...’ before ‘<’ token
>   850 | bool Parse(const char* str, size_t n, std::optional<T>* dest) {
>       |                                                    ^
> /usr/include/re2/re2.h: In function ‘bool re2::re2_internal::Parse(const 
> char*, size_t, int)’:
> /usr/include/re2/re2.h:852:9: error: ‘dest’ was not declared in this scope 
> [-Wtemplate-body]
>   852 |     if (dest != NULL)
>       |         ^~~~
> /usr/include/re2/re2.h:858:9: error: ‘dest’ was not declared in this scope 
> [-Wtemplate-body]
>   858 |     if (dest != NULL)
>       |         ^~~~
> /usr/include/re2/re2.h: At global scope:
> /usr/include/re2/re2.h:866:44: error: ‘std::optional’ has not been declared
>   866 | bool Parse(const char* str, size_t n, std::optional<T>* dest, int 
> radix) {
>       |                                            ^~~~~~~~
> /usr/include/re2/re2.h:866:44: note: ‘std::optional’ is only available from 
> C++17 onwards
> /usr/include/re2/re2.h:866:52: error: expected ‘,’ or ‘...’ before ‘<’ token
>   866 | bool Parse(const char* str, size_t n, std::optional<T>* dest, int 
> radix) {
>       |                                                    ^
> /usr/include/re2/re2.h:866:6: error: redefinition of ‘template<class T> bool 
> re2::re2_internal::Parse(const char*, size_t, int)’
>   866 | bool Parse(const char* str, size_t n, std::optional<T>* dest, int 
> radix) {
>       |      ^~~~~
> /usr/include/re2/re2.h:850:6: note: ‘template<class T> bool 
> re2::re2_internal::Parse(const char*, size_t, int)’ previously declared here
>   850 | bool Parse(const char* str, size_t n, std::optional<T>* dest) {
>       |      ^~~~~
> make[4]: *** [CMakeFiles/grpc.dir/build.make:516: 
> CMakeFiles/grpc.dir/src/core/ext/filters/client_channel/lb_policy/xds/cds.cc.o]
>  Error 1

Reply via email to