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

stripModifiers() should recursively remove modifiers #897

Merged

Conversation

JohanEngelen
Copy link
Member

This fixes an ICE on Win64/MSVC2013. See the discussion at the end of #856

Please verify that this is indeed the intended behavior of stripModifiers() throughout LDC. If not, we could add an extra bool recursive = false argument.

If merged, please also merge into merge-2.067. (I don't know how to cherrypick commits, still learning git)

Strip modifiers transitively when testing whether to repaint return type.
@JohanEngelen JohanEngelen force-pushed the recursive_stripmodifiers branch from d0e3f0e to 8396fc9 Compare April 14, 2015 20:07
@JohanEngelen
Copy link
Member Author

Rebased into one commit. Travis build is (virtually) green, and it fixes the Windows build partly: OK to merge?

@redstar
Copy link
Member

redstar commented Apr 15, 2015

@JohanEngelen Merging is simple: you need both master and merge-2.067 branch locally. Checkout master, pull in changes, checkout merge-2.067, run git merge merge-2.067, resolve conflicts and push!

@redstar
Copy link
Member

redstar commented Apr 15, 2015

Is this PR still required/recommended?

@JohanEngelen
Copy link
Member Author

@redstar Will check if still needed after recent commit.

@JohanEngelen
Copy link
Member Author

@redstar Actually, it is no longer needed because at the moment (after my Win64 ABI partial revert) there is no ABI that passes dynamic arrays via sret. But I still think we should merge this, so that in future we don't crash for sret dynamic arrays. (I am working on making it possible)

Edit: if you agree, please hit the merge button :)

@redstar
Copy link
Member

redstar commented Apr 15, 2015

Please merge if you think it is needed.

JohanEngelen added a commit that referenced this pull request Apr 15, 2015
`stripModifiers()` should recursively remove modifiers before equality check in return type repainting
@JohanEngelen JohanEngelen merged commit e44c402 into ldc-developers:master Apr 15, 2015
@JohanEngelen JohanEngelen deleted the recursive_stripmodifiers branch April 15, 2015 20:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants