[Debichem-devel] Bug#1037780: molmodel: ftbfs with GCC-13

Matthias Klose doko at debian.org
Wed Jun 14 10:28:41 BST 2023


Package: src:molmodel
Version: 3.1.0-2
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/molmodel_3.1.0-2_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

[...]
/<<PKGBUILDDIR>>/src/Representation.cpp:129:5: note: in expansion of macro ‘MK_RESIDUE_SPECIFIER’
  129 |     MK_RESIDUE_SPECIFIER("deoxythymidine", "dt",  'T', UNKNOWN, DEOXYTHYMINE);
      |     ^~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/Representation.cpp:19:55: error: ‘ResidueType’ is not a class, namespace, or enumeration
   19 |     static_assert(std::underlying_type_t<ResidueType>(ResidueType::type) < NUM_RESIDUE_TYPES, "Residue type out of range, check NUM_RESIDUE_TYPES"); \
      |                                                       ^~~~~~~~~~~
/<<PKGBUILDDIR>>/src/Representation.cpp:132:5: note: in expansion of macro ‘MK_RESIDUE_SPECIFIER’
  132 |     MK_RESIDUE_SPECIFIER("disulphidebridgedcysteine", "cyx", 'x', HYDROPHOBIC, DISULPHIDEBRIDGEDCYSTEINE);
      |     ^~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/Representation.cpp:20:48: error: ‘ResidueType’ is not a class, namespace, or enumeration
   20 |     arr.at(std::underlying_type_t<ResidueType>(ResidueType::type)) = ResidueSpecifier{longName, abbrevName, shortName, ResidueProp::prop, ResidueType::type}; \
      |                                                ^~~~~~~~~~~
/<<PKGBUILDDIR>>/src/Representation.cpp:132:5: note: in expansion of macro ‘MK_RESIDUE_SPECIFIER’
  132 |     MK_RESIDUE_SPECIFIER("disulphidebridgedcysteine", "cyx", 'x', HYDROPHOBIC, DISULPHIDEBRIDGEDCYSTEINE);
      |     ^~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/Representation.cpp:20:120: error: too many initializers for ‘Repr::ResidueSpecifier’
   20 |     arr.at(std::underlying_type_t<ResidueType>(ResidueType::type)) = ResidueSpecifier{longName, abbrevName, shortName, ResidueProp::prop, ResidueType::type}; \
      |                                                                                                                        ^~~~~~~~~~~
/<<PKGBUILDDIR>>/src/Representation.cpp:132:5: note: in expansion of macro ‘MK_RESIDUE_SPECIFIER’
  132 |     MK_RESIDUE_SPECIFIER("disulphidebridgedcysteine", "cyx", 'x', HYDROPHOBIC, DISULPHIDEBRIDGEDCYSTEINE);
      |     ^~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/Representation.cpp:20:86: error: expected primary-expression before ‘{’ token
   20 |     arr.at(std::underlying_type_t<ResidueType>(ResidueType::type)) = ResidueSpecifier{longName, abbrevName, shortName, ResidueProp::prop, ResidueType::type}; \
      |                                                                                      ^
/<<PKGBUILDDIR>>/src/Representation.cpp:132:5: note: in expansion of macro ‘MK_RESIDUE_SPECIFIER’
  132 |     MK_RESIDUE_SPECIFIER("disulphidebridgedcysteine", "cyx", 'x', HYDROPHOBIC, DISULPHIDEBRIDGEDCYSTEINE);
      |     ^~~~~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/Representation.cpp: In constructor ‘Repr::AtomName::AtomName(const std::string&)’:
/<<PKGBUILDDIR>>/src/Representation.cpp:139:5: error: class ‘Repr::AtomName’ does not have any field named ‘type’
  139 |     type{getAtomType(name)}
      |     ^~~~
/<<PKGBUILDDIR>>/src/Representation.cpp:139:10: error: ‘getAtomType’ was not declared in this scope
  139 |     type{getAtomType(name)}
      |          ^~~~~~~~~~~
/<<PKGBUILDDIR>>/src/Representation.cpp: At global scope:
/<<PKGBUILDDIR>>/src/Representation.cpp:144:1: error: ‘AtomType’ does not name a type
  144 | AtomType getAtomType(const std::string &name) {
      | ^~~~~~~~
/<<PKGBUILDDIR>>/src/Representation.cpp:176:1: error: ‘ResidueProp’ does not name a type; did you mean ‘Residue’?
  176 | ResidueProp getResidueProp(const ResidueType type) {
      | ^~~~~~~~~~~
      | Residue
/<<PKGBUILDDIR>>/src/Representation.cpp:180:52: error: ‘ResidueType’ does not name a type; did you mean ‘Residue’?
  180 | const ResidueSpecifier & getResidueSpecifier(const ResidueType type) {
      |                                                    ^~~~~~~~~~~
      |                                                    Residue
In file included from /usr/include/c++/13/bits/move.h:37,
                 from /usr/include/c++/13/bits/exception_ptr.h:41,
                 from /usr/include/c++/13/exception:164,
                 from /usr/include/c++/13/stdexcept:38,
                 from /<<PKGBUILDDIR>>/src/Representation.h:6:
/usr/include/c++/13/type_traits: In substitution of ‘template<class _Tp> using std::underlying_type_t = typename std::underlying_type::type [with _Tp = const int]’:
/<<PKGBUILDDIR>>/src/Representation.cpp:181:68:   required from here
/usr/include/c++/13/type_traits:2622:11: error: no type named ‘type’ in ‘struct std::underlying_type<const int>’
 2622 |     using underlying_type_t = typename underlying_type<_Tp>::type;
      |           ^~~~~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/Representation.cpp:184:1: error: ‘ResidueType’ does not name a type; did you mean ‘Residue’?
  184 | ResidueType getResidueType(const std::string &name) {
      | ^~~~~~~~~~~
      | Residue
make[3]: *** [CMakeFiles/SimTKmolmodel.dir/build.make:261: CMakeFiles/SimTKmolmodel.dir/src/Representation.cpp.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:104: CMakeFiles/SimTKmolmodel.dir/all] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[1]: *** [Makefile:139: all] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j8 "INSTALL=install --strip-program=true" VERBOSE=1 returned exit code 2
make: *** [debian/rules:4: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Debichem-devel mailing list