https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107351

            Bug ID: 107351
           Summary: Bootstrap fails when gcc is built with gcc-13-master:
                    error: conversion from 'long unsigned int' to
                    'unsigned int' changes value from '7001010000' to
                    '2706042704'
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: slyfox at gcc dot gnu.org
  Target Milestone: ---

When building gcc-13-master with gcc-13-master I see the following bootstrap
failure:

../../source/gcc/cp/module.cc: In member function 'void
module_state::write_readme(elf_out*, cpp_reader*, const char*)':
<command-line>: error: conversion from 'long unsigned int' to 'unsigned int'
changes value from '7001010000' to '2706042704' [-Werror=overflow]
../../source/gcc/cp/module.cc:14170:19: note: in expansion of macro
'MODULE_VERSION'
14170 |   version2string (MODULE_VERSION, string);
      |                   ^~~~~~~~~~~~~~

I understand bootstrap with unreleased gcc is not very well supported. But in
this case it sounds like a natural fix. Worth switching to `uint64_t` to store
gcc version internally?

configure flags: --prefix=/<<NIX>>/gcc-13.0.0
--with-gmp-include=/<<NIX>>/gmp-with-cxx-6.2.1-dev/include
--with-gmp-lib=/<<NIX>>/gmp-with-cxx-6.2.1/lib
--with-mpfr-include=/<<NIX>>/mpfr-4.1.0-dev/include
--with-mpfr-lib=/<<NIX>>/mpfr-4.1.0/lib --with-mpc=/<<NIX>>/libmpc-1.2.1
--with-native-system-header-dir=/<<NIX>>/glibc-2.35-163-dev/include
--with-build-sysroot=/ --program-prefix= --enable-lto --disable-libstdcxx-pch
--without-included-gettext --with-system-zlib --enable-checking=release
--enable-static --enable-languages=c\,c++ --disable-multilib --enable-plugin
--with-isl=/<<NIX>>/isl-0.20 --build=x86_64-unknown-linux-gnu
--host=x86_64-unknown-linux-gnu --target=x86_64-unknown-linux-gnu

Reply via email to