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: stack overflow instead of initialization loop error #23093

Closed
griesemer opened this issue Dec 12, 2017 · 2 comments
Closed

cmd/compile: stack overflow instead of initialization loop error #23093

griesemer opened this issue Dec 12, 2017 · 2 comments
Labels
FrozenDueToAge NeedsFix The path to resolution is known, but the work has not been done.
Milestone

Comments

@griesemer
Copy link
Contributor

https://play.golang.org/p/7e5OO_qt0m correctly reports an initialization loop error. But cmd/compile (1.10 Beta) crashes with a stack overflow.

Superficially looks like a new error in the inlining code.

@griesemer griesemer added the NeedsFix The path to resolution is known, but the work has not been done. label Dec 12, 2017
@griesemer griesemer added this to the Go1.10 milestone Dec 12, 2017
@mdempsky
Copy link
Member

The regression was introduced in c4b65fa.

I think the issue is the new code in hairyVisitor doesn't check if the named closure being called is a global or local variable. In inlnode, there's extra code in reassigned to make sure we don't try inlining a call to a global closure. That code was missed when the logic was copied into hairyVisitor.

@gopherbot
Copy link

Change https://golang.org/cl/83538 mentions this issue: cmd/compile: remove broken inlining accounting code

@golang golang locked and limited conversation to collaborators Dec 12, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
FrozenDueToAge NeedsFix The path to resolution is known, but the work has not been done.
Projects
None yet
Development

No branches or pull requests

3 participants