Auto merge of #84401 - crlf0710:impl_main_by_path, r=petrochenkov

Implement RFC 1260 with feature_name `imported_main`.

This is the second extraction part of #84062 plus additional adjustments.
This (mostly) implements RFC 1260.

However there's still one test case failure in the extern crate case. Maybe `LocalDefId` doesn't work here? I'm not sure.

cc https://github.com/rust-lang/rust/issues/28937
r? `@petrochenkov`
This commit is contained in:
bors 2021-04-30 06:59:37 +00:00
commit bcd696d722
38 changed files with 463 additions and 193 deletions

View file

@ -307,7 +307,7 @@ impl<'tcx> Queries<'tcx> {
_ => return,
};
let attrs = &*tcx.get_attrs(def_id.to_def_id());
let attrs = &*tcx.get_attrs(def_id);
let attrs = attrs.iter().filter(|attr| tcx.sess.check_name(attr, sym::rustc_error));
for attr in attrs {
match attr.meta_item_list() {