diff options
| author | Manish Goregaokar <manishsmail@gmail.com> | 2016-08-27 09:31:15 +0530 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-08-27 09:31:15 +0530 |
| commit | 933d481bdd1ad64804173e09a257dc46535d333e (patch) | |
| tree | 1195bba5734e4351a67099cceff75523eb28df35 /src/test/incremental/thinlto | |
| parent | 7a2a381e0e8d127c44702d79dd697e15685454e2 (diff) | |
| parent | 14b4d72e01708a82e3d070f72ac87988f08df7da (diff) | |
| download | rust-933d481bdd1ad64804173e09a257dc46535d333e.tar.gz rust-933d481bdd1ad64804173e09a257dc46535d333e.zip | |
Rollup merge of #36004 - petrochenkov:hashloan, r=arielb1
rustc_borrowck: Don't hash types in loan paths
1) Types for equal loan paths are not always equal, they can sometimes differ in lifetimes, making equal loan paths hash differently.
Example:
https://github.com/rust-lang/rust/blob/71bdeea561355ba5adbc9a1f44f4f866a75a15c4/src/libcollections/linked_list.rs#L835-L856
One of `self.list`s has type
```
&ReFree(CodeExtent(15013/CallSiteScope { fn_id: 18907, body_id: 18912 }), BrNamed(0:DefIndex(3066), 'a(397), WontChange)) mut linked_list::LinkedList<T>
```
and other has type
```
&ReScope(CodeExtent(15018/Remainder(BlockRemainder { block: 18912, first_statement_index: 0 }))) mut linked_list::LinkedList<T>
```
(... but I'm not sure it's not a bug actually.)
2) Not hashing types is faster than hashing types.
r? @arielb1
Diffstat (limited to 'src/test/incremental/thinlto')
0 files changed, 0 insertions, 0 deletions
