Get rid of native_library projection queries
They don't seem particularly useful as I don't expect native libraries to change frequently.
This commit is contained in:
parent
d7dd01fe8b
commit
ccc54613c3
7 changed files with 18 additions and 25 deletions
|
@ -15,7 +15,6 @@ use rustc_middle::ty::fast_reject::SimplifiedType;
|
|||
use rustc_middle::ty::query::{ExternProviders, Providers};
|
||||
use rustc_middle::ty::{self, TyCtxt, Visibility};
|
||||
use rustc_session::cstore::{CrateSource, CrateStore};
|
||||
use rustc_session::utils::NativeLibKind;
|
||||
use rustc_session::{Session, StableCrateId};
|
||||
use rustc_span::hygiene::{ExpnHash, ExpnId};
|
||||
use rustc_span::source_map::{Span, Spanned};
|
||||
|
@ -339,20 +338,10 @@ pub(in crate::rmeta) fn provide(providers: &mut Providers) {
|
|||
// resolve! Does this work? Unsure! That's what the issue is about
|
||||
*providers = Providers {
|
||||
allocator_kind: |tcx, ()| CStore::from_tcx(tcx).allocator_kind(),
|
||||
is_dllimport_foreign_item: |tcx, id| match tcx.native_library_kind(id) {
|
||||
Some(
|
||||
NativeLibKind::Dylib { .. } | NativeLibKind::RawDylib | NativeLibKind::Unspecified,
|
||||
) => true,
|
||||
_ => false,
|
||||
},
|
||||
is_statically_included_foreign_item: |tcx, id| {
|
||||
matches!(tcx.native_library_kind(id), Some(NativeLibKind::Static { .. }))
|
||||
},
|
||||
is_private_dep: |_tcx, cnum| {
|
||||
assert_eq!(cnum, LOCAL_CRATE);
|
||||
false
|
||||
},
|
||||
native_library_kind: |tcx, id| tcx.native_library(id).map(|l| l.kind),
|
||||
native_library: |tcx, id| {
|
||||
tcx.native_libraries(id.krate)
|
||||
.iter()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue