File tree Expand file tree Collapse file tree 2 files changed +9
-8
lines changed
trunk/src/librustc/middle Expand file tree Collapse file tree 2 files changed +9
-8
lines changed Original file line number Diff line number Diff line change 1
1
---
2
- refs/heads/master: fda9b8396057426e86409fd75c69d896b05c372e
2
+ refs/heads/master: ad700abea4c6718628a4ceccccdad6a633f1dd9c
3
3
refs/heads/snap-stage3: 1af31d4974e33027a68126fa5a5a3c2c6491824f
4
4
refs/heads/try: b53c0f93eedcdedd4fd89bccc5a3a09d1c5cd23e
5
5
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
Original file line number Diff line number Diff line change @@ -6233,13 +6233,18 @@ impl<'tcx> ctxt<'tcx> {
6233
6233
/// themselves. This should really be a unique type; `FreshTy(0)` is a
6234
6234
/// popular choice.
6235
6235
///
6236
+ /// NB: in some cases, particularly around higher-ranked bounds,
6237
+ /// this function returns a kind of conservative approximation.
6238
+ /// That is, all regions returned by this function are definitely
6239
+ /// required, but there may be other region bounds that are not
6240
+ /// returned, as well as requirements like `for<'a> T: 'a`.
6241
+ ///
6236
6242
/// Requires that trait definitions have been processed so that we can
6237
6243
/// elaborate predicates and walk supertraits.
6238
6244
pub fn required_region_bounds ( & self ,
6239
6245
erased_self_ty : Ty < ' tcx > ,
6240
6246
predicates : Vec < ty:: Predicate < ' tcx > > )
6241
- -> Vec < ty:: Region >
6242
- {
6247
+ -> Vec < ty:: Region > {
6243
6248
debug ! ( "required_region_bounds(erased_self_ty={:?}, predicates={:?})" ,
6244
6249
erased_self_ty,
6245
6250
predicates) ;
@@ -6268,11 +6273,7 @@ impl<'tcx> ctxt<'tcx> {
6268
6273
// construct such an object, but this seems
6269
6274
// correct even if that code changes).
6270
6275
if t == erased_self_ty && !r. has_escaping_regions ( ) {
6271
- if r. has_escaping_regions ( ) {
6272
- Some ( ty:: ReStatic )
6273
- } else {
6274
- Some ( r)
6275
- }
6276
+ Some ( r)
6276
6277
} else {
6277
6278
None
6278
6279
}
You can’t perform that action at this time.
0 commit comments