> Note: I'm running 9front. I can build on amd64 but not 386. Last attempt > was 1.5 on 386, bootstrapped with 1.4.2: > > dl; go version > go version go1.4.2 plan9/386 > dl; GOROOT_BOOTSTRAP=/usr/local/go > dl; ./make.rc > ##### Building Go bootstrap tool. > cmd/dist > > ##### Building Go toolchain using /usr/local/go. > bootstrap/internal/obj > bootstrap/asm/internal/flags > bootstrap/compile/internal/big > bootstrap/internal/obj/arm > bootstrap/internal/obj/arm64 > bootstrap/internal/obj/ppc64 > bootstrap/internal/obj/x86 > bootstrap/asm/internal/lex > bootstrap/asm/internal/arch > bootstrap/internal/gcprog > bootstrap/compile/internal/gc > bootstrap/asm/internal/asm > bootstrap/asm > bootstrap/link/internal/ld > bootstrap/compile/internal/amd64 > bootstrap/compile/internal/arm > bootstrap/compile/internal/arm64 > bootstrap/compile/internal/ppc64 > bootstrap/compile/internal/x86 > bootstrap/link/internal/amd64 > bootstrap/compile > bootstrap/link/internal/arm > bootstrap/link/internal/arm64 > bootstrap/link/internal/ppc64 > bootstrap/link/internal/x86 > bootstrap/link > > ##### Building go_bootstrap for host, plan9/386. > runtime > panic: runtime error: floating point error > [signal 0x5 code=0x18837950 addr=0x8e826 pc=0x1f3f87] > > goroutine 1 [running]: > bootstrap/compile/internal/big.nat.string(0x10b52000, 0x10, 0x16, > 0x3511a8, 0xa, 0x0, 0x0) > > /usr/local/386/go1.5/src/cmd/compile/internal/big/natconv.go:265 +0x117 > bootstrap/compile/internal/big.nat.decimalString(0x10b52000, 0x10, > 0x16, 0x0, 0x0) > > /usr/local/386/go1.5/src/cmd/compile/internal/big/natconv.go:241 +0x6c > bootstrap/compile/internal/big.(*Float).fmtB(0x10b769c0, 0x154f35a0, > 0x0, 0xa, 0x0, 0x0, 0x0) > /usr/local/386/go1.5/src/cmd/compile/internal/big/ftoa.go:258 > +0x136 > bootstrap/compile/internal/big.(*Float).Append(0x10b769c0, > 0x154f35a0, 0x0, 0xa, 0x62, 0x0, 0x0, 0x0, 0x0) > /usr/local/386/go1.5/src/cmd/compile/internal/big/ftoa.go:73 > +0x249 > bootstrap/compile/internal/big.(*Float).Text(0x10b769c0, 0x154f3562, > 0x0, 0x0, 0x0) > /usr/local/386/go1.5/src/cmd/compile/internal/big/ftoa.go:46 > +0x98 > bootstrap/compile/internal/gc.Fconv(0x10b769c0, 0x0, 0x0, 0x0) > > /usr/local/386/go1.5/src/cmd/compile/internal/gc/mparith3.go:208 +0x6b > bootstrap/compile/internal/gc.Vconv(0x2f0360, 0x10b769c0, 0x8, 0x0, > 0x0) > /usr/local/386/go1.5/src/cmd/compile/internal/gc/fmt.go:327 > +0x544 > bootstrap/compile/internal/gc.dumpasmhdr() > > /usr/local/386/go1.5/src/cmd/compile/internal/gc/export.go:544 +0x748 > bootstrap/compile/internal/gc.Main() > /usr/local/386/go1.5/src/cmd/compile/internal/gc/lex.go:495 > +0x19c0 > bootstrap/compile/internal/x86.Main() > > /usr/local/386/go1.5/src/cmd/compile/internal/x86/galign.go:108 +0x5ff > main.main() > /usr/local/386/go1.5/src/cmd/compile/main.go:24 +0x9a > go tool dist: FAILED: /usr/local/386/go1.5/pkg/tool/plan9_386/compile > -pack -o /tmp/go-tool-dist-289352163/_go_.a -p runtime -+ -asmhdr > /tmp/go-tool-dist-289352163/go_asm.h /usr/local/386/go1.5/src/runtime/alg.go > /usr/local/386/go1.5/src/runtime/arch1_386.go > /usr/local/386/go1.5/src/runtime/arch_386.go > /usr/local/386/go1.5/src/runtime/atomic_386.go > /usr/local/386/go1.5/src/runtime/atomic_pointer.go > /usr/local/386/go1.5/src/runtime/cgo.go > /usr/local/386/go1.5/src/runtime/cgocall.go > /usr/local/386/go1.5/src/runtime/cgocallback.go > /usr/local/386/go1.5/src/runtime/chan.go > /usr/local/386/go1.5/src/runtime/compiler.go > /usr/local/386/go1.5/src/runtime/complex.go > /usr/local/386/go1.5/src/runtime/cpuprof.go > /usr/local/386/go1.5/src/runtime/cputicks.go > /usr/local/386/go1.5/src/runtime/debug.go > /usr/local/386/go1.5/src/runtime/defs_plan9_386.go > /usr/local/386/go1.5/src/runtime/env_plan9.go > /usr/local/386/go1.5/src/runtime/error.go > /usr/local/386/go1.5/src/runtime/extern.go /usr/local/386/go1.5 > /src/runtime/hash32.go /usr/local/386/go1.5/src/runtime/hashmap.go > /usr/local/386/go1.5/src/runtime/hashmap_fast.go > /usr/local/386/go1.5/src/runtime/heapdump.go > /usr/local/386/go1.5/src/runtime/iface.go > /usr/local/386/go1.5/src/runtime/lfstack.go > /usr/local/386/go1.5/src/runtime/lfstack_32bit.go > /usr/local/386/go1.5/src/runtime/lock_sema.go > /usr/local/386/go1.5/src/runtime/malloc.go > /usr/local/386/go1.5/src/runtime/mbarrier.go > /usr/local/386/go1.5/src/runtime/mbitmap.go > /usr/local/386/go1.5/src/runtime/mcache.go > /usr/local/386/go1.5/src/runtime/mcentral.go > /usr/local/386/go1.5/src/runtime/mem_plan9.go > /usr/local/386/go1.5/src/runtime/mfinal.go > /usr/local/386/go1.5/src/runtime/mfixalloc.go > /usr/local/386/go1.5/src/runtime/mgc.go > /usr/local/386/go1.5/src/runtime/mgcmark.go > /usr/local/386/go1.5/src/runtime/mgcsweep.go > /usr/local/386/go1.5/src/runtime/mgcwork.go > /usr/local/386/go1.5/src/runtime/mheap.go > /usr/local/386/go1.5/src/runtime/mprof.go > /usr/local/386/go1.5/src/runtime/msize.go > /usr/local/386/go1.5/src/runtime/mstats.go > /usr/local/386/go1.5/src/runtime/netpoll_stub.go > /usr/local/386/go1.5/src/runtime/os1_plan9.go > /usr/local/386/go1.5/src/runtime/os2_plan9.go > /usr/local/386/go1.5/src/runtime/os3_plan9.go > /usr/local/386/go1.5/src/runtime/os_plan9.go > /usr/local/386/go1.5/src/runtime/panic.go > /usr/local/386/go1.5/src/runtime/panic1.go > /usr/local/386/go1.5/src/runtime/parfor.go > /usr/local/386/go1.5/src/runtime/print1.go > /usr/local/386/go1.5/src/runtime/print1_write.go > /usr/local/386/go1.5/src/runtime/proc.go > /usr/local/386/go1.5/src/runtime/proc1.go > /usr/local/386/go1.5/src/runtime/race0.go > /usr/local/386/go1.5/src/runtime/rdebug.go > /usr/local/386/go1.5/src/runtime/rune.go > /usr/local/386/go1.5/src/runtime/runtime.go > /usr/local/386/go1.5/src/runtime/runtime1.go > /usr/local/386/go1.5/src/runtime/runtime2.go > /usr/local/386/go1.5/src/runtime/select.go > /usr/local/386/go1.5/src/runtime/sema.go > /usr/local/386/go1.5/src/runtime/signal_plan9.go /usr/local/386/go1.5/src/r > untime/sigqueue_plan9.go /usr/local/386/go1.5/src/runtime/slice.go > /usr/local/386/go1.5/src/runtime/softfloat64.go > /usr/local/386/go1.5/src/runtime/sqrt.go > /usr/local/386/go1.5/src/runtime/stack1.go > /usr/local/386/go1.5/src/runtime/stack2.go > /usr/local/386/go1.5/src/runtime/string.go > /usr/local/386/go1.5/src/runtime/string1.go > /usr/local/386/go1.5/src/runtime/stubs.go > /usr/local/386/go1.5/src/runtime/stubs32.go > /usr/local/386/go1.5/src/runtime/symtab.go > /usr/local/386/go1.5/src/runtime/sys_x86.go > /usr/local/386/go1.5/src/runtime/time.go > /usr/local/386/go1.5/src/runtime/trace.go > /usr/local/386/go1.5/src/runtime/traceback.go > /usr/local/386/go1.5/src/runtime/type.go > /usr/local/386/go1.5/src/runtime/typekind.go > /usr/local/386/go1.5/src/runtime/typekind1.go > /usr/local/386/go1.5/src/runtime/unaligned1.go > /usr/local/386/go1.5/src/runtime/vdso_none.go > /usr/local/386/go1.5/src/runtime/vlrt.go > /usr/local/386/go1.5/src/runtime/wbfat.go > /usr/local/386/go1.5/src/runtime/zgoarch_386.go /usr/local > /386/go1.5/src/runtime/zgoos_plan9.go > /usr/local/386/go1.5/src/runtime/zversion.go: exit status: 'compile 4056549: > 2' > > I understand Fish and Aram were at least able to build 1.5 on (Bell Labs) > 386. I made noise about my failure at the time but I don't think anything > has happened in response. I did try bootstrapping with 1.4.2 binaries > supplied by Fish (and also a set provided by Aram) but got the same > results. > > Beyond simply building, there are also still outstanding bug reports > about basic functionality that affect all versions of Plan 9. I don't > think there has been much movement there, either.
This is a known issue, specific to 9front on 386. Somewhere in November 2014, just before the Go 1.4 release, there was a regression that caused this issue. Sadly, I didn't have time to investigate it yet. Plan 9 on 386 and 9front on amd64 are not affected by this issue and are all able to compile and run Go 1.4, 1.5 and 1.6 successfully. -- David du Colombier