Skip to content

WIP: Thread GeneratorKind through to symbol mangling#104333

Closed
Swatinem wants to merge 1 commit intorust-lang:masterfrom
Swatinem:mangle-async
Closed

WIP: Thread GeneratorKind through to symbol mangling#104333
Swatinem wants to merge 1 commit intorust-lang:masterfrom
Swatinem:mangle-async

Conversation

@Swatinem
Copy link
Copy Markdown
Contributor

The current symbol mangling (legacy and v0) do not differentiate between closures and async fns / blocks, which is suboptimal when looking at debuginfo or stack traces.

This lays the groundwork to eventually add these special kinds of closures to the mangling scheme.


As it is implemented right now, this has a subtle problem when not yet outputting a different mangling for each GeneratorKind:
DefPathData::ClosureExpr now Hash-es differently depending on the inner GeneratorKind, so it can potentially reuse the same disambiguator.

I can potentially work around that, though it would be nicer to just have different mangling for each of those types ;-)

Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants