Skip to content

Commit 6aa3d0f

Browse files
Swap lang item collect order (externals are now collected before locals)
1 parent 150ac06 commit 6aa3d0f

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

src/librustc/middle/lang_items.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -185,19 +185,19 @@ impl<'a, 'tcx> LanguageItemCollector<'a, 'tcx> {
185185
match self.items.items[item_index] {
186186
Some(original_def_id) if original_def_id != item_def_id => {
187187
let cstore = &self.session.cstore;
188-
let span = self.ast_map.span_if_local(original_def_id).unwrap_or(span);
188+
let span = self.ast_map.span_if_local(item_def_id).unwrap_or(span);
189189
let mut err = struct_span_err!(self.session,
190190
span,
191191
E0152,
192192
"Duplicate lang item found: `{}`.",
193193
LanguageItems::item_name(item_index));
194-
if let Some(span) = self.ast_map.span_if_local(item_def_id) {
194+
if let Some(span) = self.ast_map.span_if_local(original_def_id) {
195195
span_note!(&mut err, span,
196196
"First defined here.");
197197
} else {
198198
span_note!(&mut err, span,
199199
"First defined in crate `{}`.",
200-
cstore.crate_name(item_def_id.krate));
200+
cstore.crate_name(original_def_id.krate));
201201
}
202202
err.emit();
203203
}
@@ -225,8 +225,8 @@ impl<'a, 'tcx> LanguageItemCollector<'a, 'tcx> {
225225
}
226226

227227
pub fn collect(&mut self, krate: &hir::Crate) {
228-
self.collect_local_language_items(krate);
229228
self.collect_external_language_items(krate);
229+
self.collect_local_language_items(krate);
230230
}
231231
}
232232

0 commit comments

Comments
 (0)