I see it as "impossible with the old bootstrapping mechanism" as being
for a good reason: it's not part of the compiler! I still fail to understand
what it means to "bootstrap" anything other than a compiler: that word, to
me, talks only about compilers.
Bootstrap, to me talks about the whole toolchain and all the library
that it uses. Wouldn't you bootstrap an assembler written in assembly
language? Even if the compiler is written in C, part of compiling
itself is doing an assembly -> machine language translation, which can
be stressed by bootstrapping the assembler as well. This is not
mandatory (of course) but possible with the new method.
I can see how a compiler bug, that manifests as a miscompilation of the
assembler, triggers a bootstrap failure if you also build the assembler
three times, each time using the previous compiler *and* assembler.
I still haven't heard any advantages of the new method, nor heard from
anybody who's using it: most people I've seen who've weighed in on this
discussion say "it doesn't matter to be: I'm using --disable-bootstrap".
I've interpreted it as "I don't bootstrap while debugging, so I'm using
--disable-bootstrap to debug". Not as "I'm using ../configure
--disable-bootstrap && make bootstrap".
Paolo