Skip to content

Commit fb9b451

Browse files
committed
Visit + encode stability for foreign items
Fix #19649
1 parent 44f6f52 commit fb9b451

File tree

2 files changed

+8
-0
lines changed

2 files changed

+8
-0
lines changed

src/librustc/metadata/encoder.rs

+4
Original file line numberDiff line numberDiff line change
@@ -1479,6 +1479,8 @@ fn encode_info_for_foreign_item(ecx: &EncodeContext,
14791479
encode_inlined_item(ecx, rbml_w, IIForeignRef(nitem));
14801480
}
14811481
encode_attributes(rbml_w, &*nitem.attrs);
1482+
let stab = stability::lookup(ecx.tcx, ast_util::local_def(nitem.id));
1483+
encode_stability(rbml_w, stab);
14821484
encode_symbol(ecx, rbml_w, nitem.id);
14831485
}
14841486
ast::ForeignItemStatic(_, mutbl) => {
@@ -1490,6 +1492,8 @@ fn encode_info_for_foreign_item(ecx: &EncodeContext,
14901492
encode_bounds_and_type(rbml_w, ecx,
14911493
&lookup_item_type(ecx.tcx,local_def(nitem.id)));
14921494
encode_attributes(rbml_w, &*nitem.attrs);
1495+
let stab = stability::lookup(ecx.tcx, ast_util::local_def(nitem.id));
1496+
encode_stability(rbml_w, stab);
14931497
encode_symbol(ecx, rbml_w, nitem.id);
14941498
encode_name(rbml_w, nitem.ident.name);
14951499
}

src/librustc/middle/stability.rs

+4
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,10 @@ impl<'v> Visitor<'v> for Annotator {
111111
fn visit_struct_field(&mut self, s: &StructField) {
112112
self.annotate(s.node.id, &s.node.attrs, |v| visit::walk_struct_field(v, s));
113113
}
114+
115+
fn visit_foreign_item(&mut self, i: &ast::ForeignItem) {
116+
self.annotate(i.id, &i.attrs, |_| {});
117+
}
114118
}
115119

116120
impl Index {

0 commit comments

Comments
 (0)