diff options
| author | bors <bors@rust-lang.org> | 2017-10-06 15:30:32 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2017-10-06 15:30:32 +0000 |
| commit | b67f4283b3d04ef8e0504503123001cf642ec325 (patch) | |
| tree | ec1b3a143b5c297fe43f382d27c3e17bc25cba50 /src/rustllvm/RustWrapper.cpp | |
| parent | a8feaee5b6b54c03f49481fe04a9ad9e8f659f7c (diff) | |
| parent | 91fdadba6103b6926ff0c886a6a5da002a80994a (diff) | |
| download | rust-b67f4283b3d04ef8e0504503123001cf642ec325.tar.gz rust-b67f4283b3d04ef8e0504503123001cf642ec325.zip | |
Auto merge of #45065 - arielb1:not-correct, r=nikomatsakis
fix logic error in #44269's `prune_cache_value_obligations` We want to retain obligations that *contain* inference variables, not obligations that *don't contain* them, in order to fix #43132. Because of surrounding changes to inference, the ICE doesn't occur in its original case, but I believe it could still be made to occur on master. Maybe I should try to write a new test case? Certainly not right now (I'm mainly trying to get us a beta that we can ship) but maybe before we land this PR on nightly? This seems to cause a 10% performance regression in my imprecise attempt to benchmark item-body checking for #43613, but it's better to be slow and right than fast and wrong. If we want to recover that, I think we can change the constrained-type-parameter code to actually give a list of projections that are important for resolving inference variables and filter everything else out.
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions
