On Fri, May 12, 2017 at 3:25 AM, Thomas Schwinge <tho...@codesourcery.com> wrote: > > This doesn't block me in any way, but I wanted to report it anyway: > > On Wed, 10 May 2017 10:26:15 -0700, Ian Lance Taylor <i...@golang.org> wrote: >> I have committed a large patch to update the Go frontend and libgo to >> the recent changes in the gofrontend repository. > > Doing an incremental rebuild, that ran into: > > [...]/source-gcc/libgo/go/runtime/heapdump.go:379:14: error: reference to > undefined identifier 'sys.Goexperiment' > dumpstr(sys.Goexperiment) > ^ > make[3]: *** [runtime.lo] Error 1 > make[3]: Leaving directory `[...]/build-gcc/x86_64-pc-linux-gnu/libgo' > make[2]: *** [all-recursive] Error 1 > make[2]: Leaving directory `[...]/build-gcc/x86_64-pc-linux-gnu/libgo' > make[1]: *** [all] Error 2 > make[1]: Leaving directory `[...]/build-gcc/x86_64-pc-linux-gnu/libgo' > make: *** [all-target-libgo] Error 2 > > Removing "x86_64-pc-linux-gnu/libgo", and rebuilding, it passed. > > There is: > >> commit eab2960aee91d3e3a6baa5b1bce01262d24c714f >> Author: Ian Lance Taylor <i...@golang.org> >> Date: Thu Apr 20 17:08:19 2017 -0700 >> >> runtime/internal/sys: define Goexperiment >> >> The gc toolchain defines Goexperiment based on the environment >> variable GOEXPERIMENT when the toolchain is built. We just always set >> Goexperiment to the empty string. >> >> Reviewed-on: https://go-review.googlesource.com/41292 > > | diff --git a/libgo/Makefile.am b/libgo/Makefile.am > | index f600a83..f4bf2bc 100644 > | --- a/libgo/Makefile.am > | +++ b/libgo/Makefile.am > | > | @@ -512,6 +512,7 @@ > | echo "package sys" > version.go.tmp > | echo 'const DefaultGoroot = "$(prefix)"' >> version.go.tmp > | echo 'const TheVersion = "'`cat $(srcdir)/VERSION | sed 1q`' '`$(GOC) > --version | sed 1q`'"' >> version.go.tmp > | + echo 'const Goexperiment = ``' >> version.go.tmp > | echo 'const GOARCH = "'$(GOARCH)'"' >> version.go.tmp > | echo 'const GOOS = "'$(GOOS)'"' >> version.go.tmp > | echo 'const GccgoToolDir = "$(libexecsubdir)"' >> version.go.tmp > > In the failed build's tree, I do see that the Makefile has been renewed, > but the version.go file has not yet been, at the time the build failed. > Is there some missing dependency, or should that be implicit? > libgo/go/runtime/heapdump.go also is new, and is the only user of > sys.Goexperiment, as far as I can tell.
Thanks. I don't know what would cause that. The dependencies in libgo/Makefile.am look right to me. They do the same kind of thing as I see in gcc/Makefile.in (for example, for cs-config.h). If anybody has any ideas, please let me know. Ian