The Go frontend was approved for inclusion with gcc by the steering committee a while back: http://gcc.gnu.org/ml/gcc/2010-01/msg00500.html .
Assuming it is OK with the release managers, I would like to get it into the gcc 4.6 release. I have been running behind my intended schedule, for which I apologize. However, the code is almost ready to merge, in the sense that the only remaining changes are Go specific and should not affect other languages. The only thing I hope to clean up further before the merge is additional separation between the Go frontend proper and the gcc-specific interface. I'm not going to have time to do the full planned separation, which I will continue to work on, but I hope to have the proper framework in place for future work. There are three new source code directories: gcc/go, libgo, and elfcpp. The last is currently part of the src repository, where it is used by gold. I propose moving the master copy of elfcpp to gcc, and handling it like libiberty. There are three new testsuite directories: gcc/testsuite/go.dg, gcc/testsuite/go.go-torture, gcc/testsuite/go.test. The last is mostly a copy of the testsuite for the gc compiler. The following other files are changed: gcc/opts.c gcc/toplev.c gcc/debug.h gcc/flag-types.h gcc/c-family/c-lex.c gcc/Makefile.in Add support for -ggo, used when building runtime library. gcc/common.opt Add -ggo and also -static-libgo. gcc/gcc.c Recognize .go files. gcc/configure.ac Check whether -static-libstdc++ is supported. gcc/testsuite/lib/go-dg.exp gcc/testsuite/lib/go.exp gcc/testsuite/lib/go-torture.exp Go testsuite support. gcc/testsuite/lib/target-supports.exp Recognize Go code. configure.ac Add libgo. If building Go, build C++ as a boot language. If building libgo, build libffi. Makefile.def Makefile.tpl Add libgo and Go environment variables. config-ml.in Pass down some Go environment variables. libtool.m4 ltmain.sh Add Go support; patch sent upstream. gcc/acinclude.m4 config/go.m4 Add Go support; patch sent upstream. configure Makefile.in gcc/configure Regenerate. Ian