Eric Botcazou <ebotca...@adacore.com> wrote: >> Right now Go does not build on a range of targets, notably including >> Windows, MacOS, AIX, and most embedded systems. We would have to >> disable it by default on targets that are not supported, which is >> straightforward (we already have rules to disable java on targets it >> does not support). But to the extent that there are options like >> -fnon-call-exceptions that are tested primarily by Java and Go, we >> would get less coverage of those options, since we would not test >them >> on systems that Java supports but Go does not. > >Let me make the case for Ada here: it's a general purpose, highly >portable >language, which is regularly built and tested on a significant range of > >platforms (I personally test it on x86/Linux, x86-64/Linux, >PowerPC/Linux, >IA-64/Linux, SPARC/Solaris and SPARC64/Solaris). It exercices some >features >of the compiler that aren't exercised by other languages and stretches >some >common features much more than the other languages. It turns out that >it also >enables -fnon-call-exceptions by default. It seamlessly works with >LTO. > >While the fact that a big part of the front-end is written in Ada could >be >seen as an annoyance (although GNAT has been largely available for >about a >decade on many systems), it can also be seen a boon; for example, a LTO > >bootstrap with Ada enabled really exercises cross-language >optimizations. > >Bootstrapping with Ada is marginally slower than with Go (a few >percents) and >the testsuite is small (4-way parallelizable, testing time of 6 minutes >on a >fast machine). > >> More seriously, the Go sources live in a separate repository, and are >> copied to the GCC repo. In practice this means that when Go breaks, >> it can't be fixed until I am online to fix it. I don't think it >would >> be good for GCC for a bootstrap break to depend on me. > >In contrast to that, the FSF repository is the master repository for >GNAT and >breakages can be quickly fixed by anyone with write access.
I agree that testing ADA is much more useful than GO. It uses a much more interesting set of middle-end features. Oh, can we consider dropping java alltogether please? Richard.