-
Notifications
You must be signed in to change notification settings - Fork 18.4k
Closed
Labels
Milestone
Description
What steps will reproduce the problem? 1. Go 1 Debian packages (2:1-2 version) 2. Get helloworld.go example from front page 3. Run go build -v -x helloworld.go What is the expected output? Compiled helloworld What do you see instead? morestack trampoline not defined - runtime.morestack00 morestack trampoline not defined - runtime.morestack10 morestack trampoline not defined - runtime.morestack01 morestack trampoline not defined - runtime.morestack11 morestack trampoline not defined - runtime.morestack8 morestack trampoline not defined - runtime.morestack16 morestack trampoline not defined - runtime.morestack24 morestack trampoline not defined - runtime.morestack32 morestack trampoline not defined - runtime.morestack40 morestack trampoline not defined - runtime.morestack48 Segmentation fault (The segfault is normally hidden by go build, but it appears when 6l or 8l invoked by hand.) Which compiler are you using (5g, 6g, 8g, gccgo)? export WORK=/tmp/go-build622447413; /usr/lib/go/pkg/tool/linux_amd64/6l -o helloworld -L $WORK $WORK/command-line-arguments.a ondrej@howl:~$ export WORK=/tmp/go-build587634510 ondrej@howl:~$ /usr/lib/go/pkg/tool/linux_386/8l -o fibonacci -L $WORK $WORK/command-line-arguments.a runtime.morestack not defined Segmentation fault Which operating system are you using? Debian Linux amd64 (unstable) and i386 (unstable) Which version are you using? (run 'go version') go1 Please provide any additional information below. The unfortunate thing is that output binary is produce even though linking ended in segfault, that also points to the fact, that the output of resulting binary is not atomic (and I think it should be, e.g. generate temp file in $WORK and move binary into the place only if the linking was successful). Attaching $WORK environment and strace output. I do some packaging mumbojumbo, but in go1 all patches are related to GNU/KFreeBSD compatibility and not distributing non *.go source files, which _should_ not really matter (or I see no error related to that fact).
Attachments:
- go1-amd64-sigsegv.tar.gz (2403076 bytes)
- go1-i386-sigsegv.tar.gz (204314 bytes)