-
Notifications
You must be signed in to change notification settings - Fork 10.6k
[sil] Eliminate end_borrow_argument now that end_borrow has a single … #19131
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
[sil] Eliminate end_borrow_argument now that end_borrow has a single … #19131
Conversation
|
@swift-ci smoke test |
rjmccall
left a comment
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.
Progress!
c2ea7bb to
db5189b
Compare
|
While looking at those failing tests I discovered we aren't strictly verifying guaranteed arguments as much as we can. The behavior that we want is that a guaranteed argument must be contained strictly within the parent borrowed scope. I have an additional commit that is going to tighten this up and adds a bunch of tests to check the behavior. |
|
It is ok to ignore that for now since SILGen doesn't emit +0 non-function arguments. |
|
@swift-ci smoke test and merge |
2 similar comments
|
@swift-ci smoke test and merge |
|
@swift-ci smoke test and merge |
…operand. I changed all of the places that used end_borrow_argument to use end_borrow. NOTE: I discovered in the process of this patch that we are not verifying guaranteed block arguments completely. I disabled the tests here that show this bad behavior and am going to re-enable them with more tests in a separate PR. This has not been a problem since SILGen does not emit any such arguments as guaranteed today. But once I do the SILGenPattern work this will change. rdar://33440767
db5189b to
0290cd4
Compare
|
Lets try this one last time. |
|
@swift-ci smoke test and merge |
2 similar comments
|
@swift-ci smoke test and merge |
|
@swift-ci smoke test and merge |
…operand.
I changed all of the places that used end_borrow_argument to use end_borrow.
rdar://33440767