-
-
Notifications
You must be signed in to change notification settings - Fork 610
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
Fix 23295 - explain why scope inference failed #14373
Conversation
|
Thanks for your pull request and interest in making D better, @dkorpel! We are looking forward to reviewing it, and you should be hearing from a maintainer soon.
Please see CONTRIBUTING.md for more information. If you have addressed all reviews or aren't sure how to proceed, don't hesitate to ping us with a simple comment. Bugzilla references
Testing this PR locallyIf you don't have a local development environment setup, you can use Digger to test this PR: dub run digger -- build "master + dmd#14373" |
|
@Geod24 We briefly discussed this in London after the foundation meeting. |
54b1278 to
54ac37a
Compare
compiler/src/dmd/escape.d
Outdated
| } | ||
|
|
||
| /// Called by `deinitializeDMD` to deinitialize the escape state. | ||
| static void deinitialize() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there really any point in having both these functions? Can't we have just the deinitalize one and skip calling initialize? If not, can't we give it a more generic name like reset ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I made it consistent with the other aggregates in initDMD and deinitializeDMD.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's now a single reset function
31e8fd8 to
f30e360
Compare
f30e360 to
f3d3d04
Compare
Following up #14368
I'm using an associative array instead of an extra field to
VarDeclarationto reduce memory. It is annoying that there's no easy way to find the correspondingVarDeclarationof aParameter, so I'll pass it intocheckParamArgumentEscape.So far it only works for direct
@safeerrors, and not for a storedAttributeViolation(#13957), which is a future improvement..