On Fri, Feb 04, 2022 at 04:43:53PM +0100, Andreas Schwab wrote:
> On Feb 04 2022, Michael Meissner via Gcc-patches wrote:
> > If the user did not specify a default long double format when configuring
> > GCC, use the long double default from the host compiler.
> 
> That doesn't make any sense.  The host compiler can be any random
> compiler completely unrelated to the target.

Yes, see <https://gcc.gnu.org/onlinedocs/gccint/Portability.html>.

It also goes against the basic GCC policy that results should be
reproducible.  We *do* have some existing cases where the compiler
changes behaviour based on whether e.g. binutils is too old to have a
certain feature.  Either a) such cases are ancient, everyone has a newer
version in practice, we could just require this; or b) those cases cause
no end of problems, everyone is much better off if we tell the user at
configuration time to get newer stuff, or if it causes a clear error in
the first place we can just let it do that.

Also.  We cannot have confidence that our compiler does anything correct
or good if we cannot test it.  If we let the testing matrix explode
exponentially we cannot test even the reasonable cases.  It will make
the support job a lot harder as well: users will not report what they
used when configuring and building the compiler when they report a
problem, even more so because in all likelyhood it was someone else who
did that building!  And our own diagnostic for this (the gcc -v output)
dows not say what defaults the build compiler used.

I already NAKed this patch for weeks, and I do it again now.


Segher

Reply via email to