Skip to content

cmd/compile: internal compiler error: Expand calls interface data problem #49378

Closed
@ALTree

Description

@ALTree
$ gotip version
go version devel go1.18-6fefb7f9f3 Fri Nov 5 07:00:05 2021 +0000 windows/amd64
package p

func f(i int) {
        var s1 struct {
                s struct{ s struct{ i int } }
        }
        var s2, s3 struct {
                a struct{ i int }
                b int
        }
        func() {
                i = 1 + 2*i + s3.a.i + func() int {
                        s2.a, s2.b = s3.a, s3.b
                        return 0
                }() + func(*int) int {
                        return s1.s.s.i
                }(new(int))
        }()
}
$ gotip tool compile crash.go

crash.go:18:2: internal compiler error: 'f.func1': Expand calls interface data problem, func f.func1, v=v39 = StructSelect <int> [0] v13, w=v13 = StructSelect <int> [0] v9


goroutine 1 [running]:
runtime/debug.Stack()
        D:/users/XXX/alberto/other/gotip/src/runtime/debug/stack.go:24 +0x65
cmd/compile/internal/base.FatalfAt({0x1145140?, 0x0?}, {0xc0000be7c0, 0x3f}, {0xc000059300, 0x4, 0x4})
        D:/users/XXX/alberto/other/gotip/src/cmd/compile/internal/base/print.go:227 +0x1ca
cmd/compile/internal/base.Fatalf(...)
        D:/users/XXX/alberto/other/gotip/src/cmd/compile/internal/base/print.go:196
cmd/compile/internal/ssagen.(*ssafn).Fatalf(0x8?, {0x171f0598?, 0x208?}, {0x11ee34e, 0x39}, {0xc0003c23f0, 0x3, 0x0?})
        D:/users/XXX/alberto/other/gotip/src/cmd/compile/internal/ssagen/ssa.go:7650 +0x17d
cmd/compile/internal/ssa.(*Func).Fatalf(0xc0003de380, {0x11ee34e, 0x39}, {0xc0003c23f0, 0x3, 0x3})
        D:/users/XX/alberto/other/gotip/src/cmd/compile/internal/ssa/func.go:773 +0x279
cmd/compile/internal/ssa.expandCalls(0xc0003de380)
        D:/users/XXX/alberto/other/gotip/src/cmd/compile/internal/ssa/expand_calls.go:1472 +0xbff
cmd/compile/internal/ssa.Compile(0xc0003de380)

Compiles fine on go1.17.2.

Similar: #49249.

Metadata

Metadata

Assignees

No one assigned

    Labels

    FrozenDueToAgeNeedsFixThe path to resolution is known, but the work has not been done.

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions