PlaceRef {
base:
PlaceBase::Static(box Static {
- kind: StaticKind::Promoted(_),
+ kind: StaticKind::Promoted(..),
..
}),
projection: None,
PlaceRef {
base:
PlaceBase::Static(box Static {
- kind: StaticKind::Static(def_id),
+ kind: StaticKind::Static,
+ def_id,
..
}),
projection: None,
buf.push_str(&self.infcx.tcx.item_name(*def_id).to_string());
}
PlaceRef {
- ref base,
+ base,
projection: Some(ref proj),
} => {
match proj.elem {
// FIXME turn this recursion into iteration
self.append_place_to_string(
PlaceRef {
- base: &base,
+ base,
projection: &proj.base,
},
buf,
if self.body.local_decls[*local].is_ref_for_guard() {
self.append_place_to_string(
PlaceRef {
- base: &base,
+ base,
projection: &proj.base,
},
buf,
buf.push_str(&"*");
self.append_place_to_string(
PlaceRef {
- base: &base,
+ base,
projection: &proj.base,
},
buf,
buf.push_str(&"*");
self.append_place_to_string(
PlaceRef {
- base: &base,
+ base,
projection: &proj.base,
},
buf,
ProjectionElem::Downcast(..) => {
self.append_place_to_string(
PlaceRef {
- base: &base,
+ base,
projection: &proj.base,
},
buf,
buf.push_str(&name);
} else {
let field_name = self.describe_field(PlaceRef {
- base: base,
+ base,
projection: &proj.base,
}, field);
self.append_place_to_string(
PlaceRef {
- base: &base,
+ base,
projection: &proj.base,
},
buf,
self.append_place_to_string(
PlaceRef {
- base: &base,
+ base,
projection: &proj.base,
},
buf,
// to avoid confusing the end-user
self.append_place_to_string(
PlaceRef {
- base: &base,
+ base,
projection: &proj.base,
},
buf,
pub fn is_place_thread_local(&self, place_ref: PlaceRef<'cx, 'tcx>) -> bool {
if let PlaceRef {
base: PlaceBase::Static(box Static {
- kind: StaticKind::Static(def_id),
+ kind: StaticKind::Static,
+ def_id,
..
}),
projection: None,