Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cmd/compile: internal compiler error: debuginfo unused node #22962

Closed
ALTree opened this issue Dec 1, 2017 · 2 comments
Closed

cmd/compile: internal compiler error: debuginfo unused node #22962

ALTree opened this issue Dec 1, 2017 · 2 comments
Assignees
Milestone

Comments

@ALTree
Copy link
Member

@ALTree ALTree commented Dec 1, 2017

$ gotip version
go version devel +9372166faa Fri Dec 1 18:52:50 2017 +0000 linux/amd64

The following two-files program:

a/a.go

package a

func F() {
	if x := 0; false {
		_ = x
	}
}

b/b.go

package b

import "a"

var V = func() { a.F() }

crashes the tip compiler (when compiling b) with the following error message:

# command-line-arguments
<autogenerated>:1:0: internal compiler error: debuginfo unused node (AllocFrame should truncate fn.Func.Dcl)

goroutine 1 [running]:
runtime/debug.Stack(0x0, 0x0, 0x0)
	/home/alberto/go/src/runtime/debug/stack.go:24 +0xa7
cmd/compile/internal/gc.Fatalf(0xc29ce4, 0x3e, 0x0, 0x0, 0x0)
	/home/alberto/go/src/cmd/compile/internal/gc/subr.go:182 +0x1f2
cmd/compile/internal/gc.debuginfo(0xc420306150, 0xc04bc0, 0xc4203501e0, 0x30, 0xc4203135c8, 0x41da36, 0xc4204ac480, 0x7f4aead3c011, 0x7f4aeaf4c610)
	/home/alberto/go/src/cmd/compile/internal/gc/pgen.go:325 +0x448
cmd/internal/obj.(*Link).DwarfAbstractFunc(0xc42000e240, 0xc04bc0, 0xc4203501e0, 0xc420306150, 0x7ffca3d38266, 0x16)
	/home/alberto/go/src/cmd/internal/obj/objfile.go:603 +0xb9
cmd/compile/internal/gc.genAbstractFunc(0xc420306150)
	/home/alberto/go/src/cmd/compile/internal/gc/dwinl.go:167 +0xb0
cmd/internal/obj.(*DwarfFixupTable).Finalize(0xc420059080, 0x7ffca3d38266, 0x16, 0xc42000e400)
	/home/alberto/go/src/cmd/internal/obj/objfile.go:854 +0x266
cmd/compile/internal/gc.Main(0xc2d428)
	/home/alberto/go/src/cmd/compile/internal/gc/main.go:655 +0x2cd1
main.main()
	/home/alberto/go/src/cmd/compile/main.go:49 +0x89

The compiler does not crash if -gendwarfinl=0 is passed.

@ALTree ALTree added this to the Go1.10 milestone Dec 1, 2017
@thanm

This comment has been minimized.

Copy link
Member

@thanm thanm commented Dec 1, 2017

I will take a look.
Thanks for the reduced test case.

@gopherbot

This comment has been minimized.

Copy link

@gopherbot gopherbot commented Dec 1, 2017

Change https://golang.org/cl/81557 mentions this issue: cmd/compile: fix bug in DWARF inl handling of unused autos

@gopherbot gopherbot closed this in 88c2fb9 Dec 4, 2017
@golang golang locked and limited conversation to collaborators Dec 4, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
4 participants
You can’t perform that action at this time.