Skip to content

cmd/compile: panic during fuse with if true block containing a goto and a return #28616

@helloPiers

Description

@helloPiers

What version of Go are you using (go version)?

Does this issue reproduce with the latest release?

Reproduces on playground, master branch, and Go v1.11.2.
Doesn't reproduce on Go v1.10.5.

What did you do?

Tried to compile code which I've boiled down to:
https://play.golang.org/p/2fEsQtceadQ

What did you expect to see?

Compilation success

What did you see instead?

prog.go:5:2: internal compiler error: 'f1': panic during fuse while compiling f1:

runtime error: index out of range

goroutine 20 [running]:
cmd/compile/internal/ssa.Compile.func1(0xc000403218, 0xc00034c6e0)
	/usr/local/go/src/cmd/compile/internal/ssa/compile.go:38 +0xc6
panic(0xc445e0, 0x12dc7e0)
	/usr/local/go/src/runtime/panic.go:513 +0x1b9
cmd/compile/internal/ssa.fuseBlockPlain(0xc0003dfce8, 0x47be00)
	/usr/local/go/src/cmd/compile/internal/ssa/fuse.go:123 +0x781
...

Metadata

Metadata

Assignees

No one assigned

    Labels

    FrozenDueToAgeNeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.release-blocker

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions