#1133563 msc-generator: ftbfs with GCC-16

#1133563#5
Date:
2026-04-13 13:07:43 UTC
From:
To:
Hi,

msc-generator fails to build in a test rebuild on at least amd64 and arm64 with
gcc-16/g++-16, but builds properly with gcc-15/g++-15. The severity of this
report will be raised before the forky release.

The full build log can be found at:
https://people.debian.org/~ema/gcc-16-rebuilds/output-1/msc-generator_arm64.build.xz

The last lines of the build log are at the end of this report.

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

  apt-get -t=experimental install g++

Common build failures include unused (but set) variables, array subscripts
partly outside array bounds, and new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-16/porting_to.html

Please only close this issue after double-checking that the package can be
built correctly with GCC 16.

Please do not reassign this bug to another package. If a fix in another package
is required, then file a bug for the other package (or clone), and mark this
bug as blocked by the bug in the other package.

[...]


      |                ^~~~~~~~~~~
../../../../src/libcgencommon/csh.cpp: In member function ‘void Csh::AddIncludeFilesToHints(std::string_view, const CshPos&)’:
../../../../src/libcgencommon/csh.cpp:2593:41: error: ‘COLOR_INCLUDEFILE’ was not declared in this scope
 2593 |         std::string format = HintPrefix(COLOR_INCLUDEFILE);
      |                                         ^~~~~~~~~~~~~~~~~
../../../../src/libcgencommon/csh.cpp: In member function ‘void Csh::AddLanguagesToHints(std::string_view)’:
../../../../src/libcgencommon/csh.cpp:2607:46: error: ‘COLOR_KEYWORD’ was not declared in this scope
 2607 |         AddToHints(CshHint(StrCat(HintPrefix(COLOR_KEYWORD), l),
      |                                              ^~~~~~~~~~~~~
../../../../src/libcgencommon/csh.cpp: In member function ‘virtual void Csh::AddEntitiesToHints()’:
../../../../src/libcgencommon/csh.cpp:2630:43: error: ‘COLOR_ENTITYNAME’ was not declared in this scope
 2630 |             AddToHints(CshHint(HintPrefix(COLOR_ENTITYNAME) + e, nullptr, EHintType::ENTITY, true));
      |                                           ^~~~~~~~~~~~~~~~
../../../../src/libcgencommon/csh.cpp: In member function ‘void Csh::AddEscapesToHints(EEscapeHintType)’:
../../../../src/libcgencommon/csh.cpp:2656:47: error: ‘COLOR_ATTRVALUE’ was not declared in this scope
 2656 |                 AddToHints(CshHint(HintPrefix(COLOR_ATTRVALUE)+str, nullptr,
      |                                               ^~~~~~~~~~~~~~~
../../../../src/libcgencommon/csh.cpp:2672:24: error: ‘COLOR_LABEL_ESCAPE’ was not declared in this scope
 2672 |             HintPrefix(COLOR_LABEL_ESCAPE) : HintPrefixNonSelectable();
      |                        ^~~~~~~~~~~~~~~~~~
../../../../src/libcgencommon/csh.cpp: In member function ‘virtual void Csh::AddLineBeginToHints()’:
../../../../src/libcgencommon/csh.cpp:2697:42: error: ‘COLOR_KEYWORD’ was not declared in this scope
 2697 |     AddToHints(keyword_names, HintPrefix(COLOR_KEYWORD), EHintType::KEYWORD,
      |                                          ^~~~~~~~~~~~~
../../../../src/libcgencommon/csh.cpp: In member function ‘virtual void Csh::AddDesignLineBeginToHints()’:
../../../../src/libcgencommon/csh.cpp:2710:42: error: ‘COLOR_KEYWORD’ was not declared in this scope
 2710 |     AddToHints(keyword_names, HintPrefix(COLOR_KEYWORD), EHintType::KEYWORD,
      |                                          ^~~~~~~~~~~~~
../../../../src/libcgencommon/csh.cpp: In member function ‘virtual Csh::EntityNameUnderResult Csh::EntityNameUnder(long int) const’:
../../../../src/libcgencommon/csh.cpp:2792:16: error: ‘const struct CshEntry’ has no member named ‘color’
 2792 |         if ((p.color == COLOR_ENTITYNAME || p.color == COLOR_ENTITYNAME_FIRST) && p.IsWithinChar(char_index) ) {
      |                ^~~~~
../../../../src/libcgencommon/csh.cpp:2792:25: error: ‘COLOR_ENTITYNAME’ was not declared in this scope
 2792 |         if ((p.color == COLOR_ENTITYNAME || p.color == COLOR_ENTITYNAME_FIRST) && p.IsWithinChar(char_index) ) {
      |                         ^~~~~~~~~~~~~~~~
../../../../src/libcgencommon/csh.cpp:2792:47: error: ‘const struct CshEntry’ has no member named ‘color’
 2792 |         if ((p.color == COLOR_ENTITYNAME || p.color == COLOR_ENTITYNAME_FIRST) && p.IsWithinChar(char_index) ) {
      |                                               ^~~~~
../../../../src/libcgencommon/csh.cpp:2792:56: error: ‘COLOR_ENTITYNAME_FIRST’ was not declared in this scope
 2792 |         if ((p.color == COLOR_ENTITYNAME || p.color == COLOR_ENTITYNAME_FIRST) && p.IsWithinChar(char_index) ) {
      |                                                        ^~~~~~~~~~~~~~~~~~~~~~
../../../../src/libcgencommon/csh.cpp: In member function ‘virtual std::string Csh::ReplaceEntityName(std::string_view, int, std::string_view, long int, long int) const’:
../../../../src/libcgencommon/csh.cpp:2815:16: error: ‘const struct CshEntry’ has no member named ‘color’
 2815 |         if ((p.color == COLOR_ENTITYNAME || p.color == COLOR_ENTITYNAME_FIRST)
      |                ^~~~~
../../../../src/libcgencommon/csh.cpp:2815:25: error: ‘COLOR_ENTITYNAME’ was not declared in this scope
 2815 |         if ((p.color == COLOR_ENTITYNAME || p.color == COLOR_ENTITYNAME_FIRST)
      |                         ^~~~~~~~~~~~~~~~
../../../../src/libcgencommon/csh.cpp:2815:47: error: ‘const struct CshEntry’ has no member named ‘color’
 2815 |         if ((p.color == COLOR_ENTITYNAME || p.color == COLOR_ENTITYNAME_FIRST)
      |                                               ^~~~~
../../../../src/libcgencommon/csh.cpp:2815:56: error: ‘COLOR_ENTITYNAME_FIRST’ was not declared in this scope
 2815 |         if ((p.color == COLOR_ENTITYNAME || p.color == COLOR_ENTITYNAME_FIRST)
      |                                                        ^~~~~~~~~~~~~~~~~~~~~~
make[5]: *** [Makefile:481: style.o] Error 1
make[5]: *** [Makefile:481: cgen_attribute.o] Error 1
make[5]: *** [Makefile:481: cgencommon.o] Error 1
make[5]: *** [Makefile:481: cgen_arrowhead.o] Error 1
make[5]: *** [Makefile:481: csh.o] Error 1
make[5]: Leaving directory '/build/reproducible-path/msc-generator-8.6.4/debian/build-gui/src/libcgencommon'
make[4]: *** [Makefile:369: all] Error 2
make[4]: Leaving directory '/build/reproducible-path/msc-generator-8.6.4/debian/build-gui/src/libcgencommon'
make[3]: *** [Makefile:377: all-recursive] Error 1
make[3]: Leaving directory '/build/reproducible-path/msc-generator-8.6.4/debian/build-gui/src'
make[2]: *** [Makefile:384: all-recursive] Error 1
make[2]: Leaving directory '/build/reproducible-path/msc-generator-8.6.4/debian/build-gui'
dh_auto_build: error: cd debian/build-gui && make -j128 INSTALL="install --strip-program=true" returned exit code 2
make[1]: *** [debian/rules:30: override_dh_auto_build] Error 25
make[1]: Leaving directory '/build/reproducible-path/msc-generator-8.6.4'
make: *** [debian/rules:3: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2