Skip to content

cmd/compile: "invalid recursive type" should abort #28294

@bep

Description

@bep

This seems to be similar to #21273 (fixed in Go 1.10).

▶ go version
go version go1.11 darwin/amd64
package main

func main() {
	type int int
	type I int

	const i I = 1
}

The above fails with

./main.go:4:7: invalid recursive type int
./main.go:5:7: invalid recursive type I
./main.go:7:8: invalid constant type I

The above is clear enough in this small case, but I had this happen to me (again, an automatic refactoring gone wrong) in a bigger program and all I saw was a list of invalid constant type (that looked valid), and then too many errors.

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.

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions