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 #11833 and simplify injectdestructors #11926
Conversation
8dcb308
to
f0df203
Compare
f0df203
to
24035dc
Compare
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.
template recurse
looks sloppy. The rest looks good.
3ce1767
to
8329cce
Compare
Not sure where the test failures on 32-bit come from... |
32e6b71
to
983db37
Compare
It fails with Error: unhandled exception: injectdestructors.nim(474, 11) Which are 32bit specific node kinds. |
But to be honest, I don't see anymore how this rewrite is clearer than the current version. Sorry, but I would have to reject this, even if the tests were green. |
@Araq It is more explicit and includes the partially materialized arrays for proc arguments and discard. This explicitness also lead to me discovering a bug which is visible in the transformation of system.getEnv. |
Ok, in the meantime, the bugfix is also here: #12018 |
983db37
to
59a9843
Compare
Which unfortunately breaks bootstrapping..
One improvement over #devel is visible in the transformation of getEnv. With this approach we move to result whenever possible.
Unrelated test failures.. |
@Araq ping |
Since this causes regressions, I'm reverting it. The statement/expression split is outdated, I don't use it anymore for transformations, see #12168 for how I would do it. It currently fails every test though... |
No description provided.