Bug#1037885: vkbasalt: ftbfs with GCC-13

Matthias Klose doko at debian.org
Wed Jun 14 10:32:22 BST 2023


Package: src:vkbasalt
Version: 0.3.2.9-1
Severity: normal
Tags: sid trixie
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-13

[This bug is targeted to the upcoming trixie release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-13/g++-13, but succeeds to build with gcc-12/g++-12. The
severity of this report will be raised before the trixie release.

The full build log can be found at:
http://qa-logs.debian.net/2023/05/22/logs/vkbasalt_0.3.2.9-1_unstable_gccexp.log
The last lines of the build log are at the end of this report.

To build with GCC 13, either set CC=gcc-13 CXX=g++-13 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

Common build failures are new warnings resulting in build failures with
-Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-13/porting_to.html

[...]
../src/reshade/effect_codegen_spirv.cpp:1682:64: note: in definition of macro ‘IMPLEMENT_INTRINSIC_SPIRV’
 1682 | #define IMPLEMENT_INTRINSIC_SPIRV(name, i, code) case name##i: code
      |                                                                ^~~~
../src/reshade/effect_symbol_table_intrinsics.inl:1728:30: error: ‘const __gnu_cxx::__alloc_traits<std::allocator<reshadefx::expression>, reshadefx::expression>::value_type’ {aka ‘const struct reshadefx::expression’} has no member named ‘base’
 1728 |                 .add(args[3].base)
      |                              ^~~~
../src/reshade/effect_codegen_spirv.cpp:1682:64: note: in definition of macro ‘IMPLEMENT_INTRINSIC_SPIRV’
 1682 | #define IMPLEMENT_INTRINSIC_SPIRV(name, i, code) case name##i: code
      |                                                                ^~~~
../src/reshade/effect_symbol_table_intrinsics.inl:1730:30: error: ‘const __gnu_cxx::__alloc_traits<std::allocator<reshadefx::expression>, reshadefx::expression>::value_type’ {aka ‘const struct reshadefx::expression’} has no member named ‘base’
 1730 |                 .add(args[2].base)
      |                              ^~~~
../src/reshade/effect_codegen_spirv.cpp:1682:64: note: in definition of macro ‘IMPLEMENT_INTRINSIC_SPIRV’
 1682 | #define IMPLEMENT_INTRINSIC_SPIRV(name, i, code) case name##i: code
      |                                                                ^~~~
../src/reshade/effect_codegen_spirv.cpp: In member function ‘virtual reshadefx::codegen::id codegen_spirv::emit_construct(const reshadefx::location&, const reshadefx::type&, const std::vector<reshadefx::expression>&)’:
../src/reshade/effect_codegen_spirv.cpp:1692:102: error: ‘const struct reshadefx::expression’ has no member named ‘base’
 1692 |                         assert((arg.type.is_scalar() || type.is_array()) && arg.chain.empty() && arg.base != 0);
      |                                                                                                      ^~~~
../src/reshade/effect_codegen_spirv.cpp:1713:66: error: ‘const __gnu_cxx::__alloc_traits<std::allocator<reshadefx::expression>, reshadefx::expression>::value_type’ {aka ‘const struct reshadefx::expression’} has no member named ‘base’
 1713 |                                         inst.add(args[arg + row].base);
      |                                                                  ^~~~
../src/reshade/effect_codegen_spirv.cpp:1726:51: error: ‘const struct reshadefx::expression’ has no member named ‘base’
 1726 |                                 ids.push_back(arg.base);
      |                                                   ^~~~
In file included from ../src/reshade/effect_codegen_spirv.cpp:7:
../src/reshade/effect_codegen.hpp: In instantiation of ‘reshadefx::codegen::find_struct(id)::<lambda(const auto:19&)> [with auto:19 = reshadefx::struct_info]’:
/usr/include/c++/13/bits/predefined_ops.h:318:23:   required from ‘constexpr bool __gnu_cxx::__ops::_Iter_pred<_Predicate>::operator()(_Iterator) [with _Iterator = __gnu_cxx::__normal_iterator<reshadefx::struct_info*, std::vector<reshadefx::struct_info> >; _Predicate = reshadefx::codegen::find_struct(id)::<lambda(const auto:19&)>]’
/usr/include/c++/13/bits/stl_algobase.h:2072:14:   required from ‘constexpr _RandomAccessIterator std::__find_if(_RandomAccessIterator, _RandomAccessIterator, _Predicate, random_access_iterator_tag) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<reshadefx::struct_info*, vector<reshadefx::struct_info> >; _Predicate = __gnu_cxx::__ops::_Iter_pred<reshadefx::codegen::find_struct(id)::<lambda(const auto:19&)> >]’
/usr/include/c++/13/bits/stl_algobase.h:2117:23:   required from ‘constexpr _Iterator std::__find_if(_Iterator, _Iterator, _Predicate) [with _Iterator = __gnu_cxx::__normal_iterator<reshadefx::struct_info*, vector<reshadefx::struct_info> >; _Predicate = __gnu_cxx::__ops::_Iter_pred<reshadefx::codegen::find_struct(id)::<lambda(const auto:19&)> >]’
/usr/include/c++/13/bits/stl_algo.h:3923:28:   required from ‘constexpr _IIter std::find_if(_IIter, _IIter, _Predicate) [with _IIter = __gnu_cxx::__normal_iterator<reshadefx::struct_info*, vector<reshadefx::struct_info> >; _Predicate = reshadefx::codegen::find_struct(id)::<lambda(const auto:19&)>]’
../src/reshade/effect_codegen.hpp:270:24:   required from here
../src/reshade/effect_codegen.hpp:271:66: error: ‘const struct reshadefx::struct_info’ has no member named ‘definition’
  271 |                                 [id](const auto &it) { return it.definition == id; });
      |                                                               ~~~^~~~~~~~~~
../src/reshade/effect_codegen.hpp: In instantiation of ‘reshadefx::codegen::find_texture(id)::<lambda(const auto:20&)> [with auto:20 = reshadefx::texture_info]’:
/usr/include/c++/13/bits/predefined_ops.h:318:23:   required from ‘constexpr bool __gnu_cxx::__ops::_Iter_pred<_Predicate>::operator()(_Iterator) [with _Iterator = __gnu_cxx::__normal_iterator<reshadefx::texture_info*, std::vector<reshadefx::texture_info> >; _Predicate = reshadefx::codegen::find_texture(id)::<lambda(const auto:20&)>]’
/usr/include/c++/13/bits/stl_algobase.h:2072:14:   required from ‘constexpr _RandomAccessIterator std::__find_if(_RandomAccessIterator, _RandomAccessIterator, _Predicate, random_access_iterator_tag) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<reshadefx::texture_info*, vector<reshadefx::texture_info> >; _Predicate = __gnu_cxx::__ops::_Iter_pred<reshadefx::codegen::find_texture(id)::<lambda(const auto:20&)> >]’
/usr/include/c++/13/bits/stl_algobase.h:2117:23:   required from ‘constexpr _Iterator std::__find_if(_Iterator, _Iterator, _Predicate) [with _Iterator = __gnu_cxx::__normal_iterator<reshadefx::texture_info*, vector<reshadefx::texture_info> >; _Predicate = __gnu_cxx::__ops::_Iter_pred<reshadefx::codegen::find_texture(id)::<lambda(const auto:20&)> >]’
/usr/include/c++/13/bits/stl_algo.h:3923:28:   required from ‘constexpr _IIter std::find_if(_IIter, _IIter, _Predicate) [with _IIter = __gnu_cxx::__normal_iterator<reshadefx::texture_info*, vector<reshadefx::texture_info> >; _Predicate = reshadefx::codegen::find_texture(id)::<lambda(const auto:20&)>]’
../src/reshade/effect_codegen.hpp:280:24:   required from here
../src/reshade/effect_codegen.hpp:281:66: error: ‘const struct reshadefx::texture_info’ has no member named ‘id’
  281 |                                 [id](const auto &it) { return it.id == id; });
      |                                                               ~~~^~
../src/reshade/effect_codegen.hpp: In instantiation of ‘reshadefx::codegen::find_function(id)::<lambda(const auto:21&)> [with auto:21 = std::unique_ptr<reshadefx::function_info>]’:
/usr/include/c++/13/bits/predefined_ops.h:318:23:   required from ‘constexpr bool __gnu_cxx::__ops::_Iter_pred<_Predicate>::operator()(_Iterator) [with _Iterator = __gnu_cxx::__normal_iterator<std::unique_ptr<reshadefx::function_info>*, std::vector<std::unique_ptr<reshadefx::function_info> > >; _Predicate = reshadefx::codegen::find_function(id)::<lambda(const auto:21&)>]’
/usr/include/c++/13/bits/stl_algobase.h:2072:14:   required from ‘constexpr _RandomAccessIterator std::__find_if(_RandomAccessIterator, _RandomAccessIterator, _Predicate, random_access_iterator_tag) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<unique_ptr<reshadefx::function_info>*, vector<unique_ptr<reshadefx::function_info> > >; _Predicate = __gnu_cxx::__ops::_Iter_pred<reshadefx::codegen::find_function(id)::<lambda(const auto:21&)> >]’
/usr/include/c++/13/bits/stl_algobase.h:2117:23:   required from ‘constexpr _Iterator std::__find_if(_Iterator, _Iterator, _Predicate) [with _Iterator = __gnu_cxx::__normal_iterator<unique_ptr<reshadefx::function_info>*, vector<unique_ptr<reshadefx::function_info> > >; _Predicate = __gnu_cxx::__ops::_Iter_pred<reshadefx::codegen::find_function(id)::<lambda(const auto:21&)> >]’
/usr/include/c++/13/bits/stl_algo.h:3923:28:   required from ‘constexpr _IIter std::find_if(_IIter, _IIter, _Predicate) [with _IIter = __gnu_cxx::__normal_iterator<unique_ptr<reshadefx::function_info>*, vector<unique_ptr<reshadefx::function_info> > >; _Predicate = reshadefx::codegen::find_function(id)::<lambda(const auto:21&)>]’
../src/reshade/effect_codegen.hpp:290:24:   required from here
../src/reshade/effect_codegen.hpp:291:67: error: ‘struct reshadefx::function_info’ has no member named ‘definition’
  291 |                                 [id](const auto &it) { return it->definition == id; })->get();
      |                                                               ~~~~^~~~~~~~~~
../src/reshade/effect_codegen_spirv.cpp: In instantiation of ‘codegen_spirv::emit_constant(const reshadefx::type&, const reshadefx::constant&, bool)::<lambda(auto:28&)> [with auto:28 = std::tuple<reshadefx::type, reshadefx::constant, unsigned int>]’:
/usr/include/c++/13/bits/predefined_ops.h:318:23:   required from ‘constexpr bool __gnu_cxx::__ops::_Iter_pred<_Predicate>::operator()(_Iterator) [with _Iterator = __gnu_cxx::__normal_iterator<std::tuple<reshadefx::type, reshadefx::constant, unsigned int>*, std::vector<std::tuple<reshadefx::type, reshadefx::constant, unsigned int> > >; _Predicate = codegen_spirv::emit_constant(const reshadefx::type&, const reshadefx::constant&, bool)::<lambda(auto:28&)>]’
/usr/include/c++/13/bits/stl_algobase.h:2072:14:   required from ‘constexpr _RandomAccessIterator std::__find_if(_RandomAccessIterator, _RandomAccessIterator, _Predicate, random_access_iterator_tag) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<reshadefx::type, reshadefx::constant, unsigned int>*, vector<tuple<reshadefx::type, reshadefx::constant, unsigned int> > >; _Predicate = __gnu_cxx::__ops::_Iter_pred<codegen_spirv::emit_constant(const reshadefx::type&, const reshadefx::constant&, bool)::<lambda(auto:28&)> >]’
/usr/include/c++/13/bits/stl_algobase.h:2117:23:   required from ‘constexpr _Iterator std::__find_if(_Iterator, _Iterator, _Predicate) [with _Iterator = __gnu_cxx::__normal_iterator<tuple<reshadefx::type, reshadefx::constant, unsigned int>*, vector<tuple<reshadefx::type, reshadefx::constant, unsigned int> > >; _Predicate = __gnu_cxx::__ops::_Iter_pred<codegen_spirv::emit_constant(const reshadefx::type&, const reshadefx::constant&, bool)::<lambda(auto:28&)> >]’
/usr/include/c++/13/bits/stl_algo.h:3923:28:   required from ‘constexpr _IIter std::find_if(_IIter, _IIter, _Predicate) [with _IIter = __gnu_cxx::__normal_iterator<tuple<reshadefx::type, reshadefx::constant, unsigned int>*, vector<tuple<reshadefx::type, reshadefx::constant, unsigned int> > >; _Predicate = codegen_spirv::emit_constant(const reshadefx::type&, const reshadefx::constant&, bool)::<lambda(auto:28&)>]’
../src/reshade/effect_codegen_spirv.cpp:1418:30:   required from here
../src/reshade/effect_codegen_spirv.cpp:1419:93: error: ‘std::__tuple_element_t<1, std::tuple<reshadefx::type, reshadefx::constant, unsigned int> >’ {aka ‘struct reshadefx::constant’} has no member named ‘as_uint’
 1419 |                                 if (!(std::get<0>(x) == type && std::memcmp(&std::get<1>(x).as_uint[0], &data.as_uint[0], sizeof(uint32_t) * 16) == 0 && std::get<1>(x).array_data.size() == data.array_data.size()))
      |                                                                              ~~~~~~~~~~~~~~~^~~~~~~
../src/reshade/effect_codegen_spirv.cpp:1422:87: error: ‘__gnu_cxx::__alloc_traits<std::allocator<reshadefx::constant>, reshadefx::constant>::value_type’ {aka ‘struct reshadefx::constant’} has no member named ‘as_uint’
 1422 |                                         if (std::memcmp(&std::get<1>(x).array_data[i].as_uint[0], &data.array_data[i].as_uint[0], sizeof(uint32_t) * 16) != 0)
      |                                                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
[12/57] c++ -Isrc/reshade/libreshade.a.p -Isrc/reshade -I../src/reshade -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=c++2a -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -Wno-unknown-pragmas -MD -MQ src/reshade/libreshade.a.p/effect_preprocessor.cpp.o -MF src/reshade/libreshade.a.p/effect_preprocessor.cpp.o.d -o src/reshade/libreshade.a.p/effect_preprocessor.cpp.o -c ../src/reshade/effect_preprocessor.cpp
ninja: build stopped: subcommand failed.
dh_auto_build: error: cd obj-x86_64-linux-gnu && LC_ALL=C.UTF-8 ninja -j8 -v returned exit code 1
make: *** [debian/rules:6: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-games-devel mailing list