https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106429
--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> --- (In reply to Martin Vahi from comment #0) > To build a newer version of GCC, some > newer version of Bash is at least sometimes required, because Why? Your "depencency graph" doesn't actually explain anything about the problem that you say exists. Where is a newer Bash required? > the building of GCC, for example, version 11.2.0, includes > the execution of some Bash scripts. I don't think that's true. Even if it is, why is a newer Bash required? > workaround is to use grep to find all Bash files that > start with the "#!/bin/bash" and replace the > "#!/bin/bash" with the "#!/usr/bin/env bash", except the file > > gcc/contrib/repro_fail > > because, for some nice amount of luck, leaving that one > to its "#!/bin/bash -eu" did not break anything. This is not luck. That script is not used when building GCC. Most of them aren't used when building GCC, as Andrew said. > The version of Bash that turned out to be too old > for building the GCC v.11.2.0 was > > 4.3.48(1)-release (x86_64-suse-linux-gnu) That's not really that old, why can't it be used? It's newer than the bash-4.2.46-35.el7_9.x86_64 version in RHEL 7 and CentOS 7, and they can build GCC without problems.