So, why do we have the --with-gnu-as flag then?
Because, on some platforms like Solaris, you can use the system assembler or
the GNU assembler, so nothing is hardcoded in config.gcc and --with-gnu-as
makes it possible to pick one. On Linux, it's always the GNU assembler so
this is hardcoded.
That's my point. After your patch, --with-gnu-as has no meaning. The
user has no way of overriding the value guessed by config.gcc.
But that value isn't guessed at all: if it's set, then it's always correct.
Note that my patch didn't change that, i.e. the compiler was and is still
configured for the GNU assembler whatever --with-gnu-as you pass on Linux.