rustc_metadata: Pass SVH by value
This commit is contained in:
parent
9be526e8eb
commit
e4710ade6d
|
@ -191,14 +191,13 @@ impl<'a> CrateLoader<'a> {
|
|||
self.cstore
|
||||
}
|
||||
|
||||
fn existing_match(&self, name: Symbol, hash: Option<&Svh>, kind: PathKind)
|
||||
-> Option<CrateNum> {
|
||||
fn existing_match(&self, name: Symbol, hash: Option<Svh>, kind: PathKind) -> Option<CrateNum> {
|
||||
let mut ret = None;
|
||||
self.cstore.iter_crate_data(|cnum, data| {
|
||||
if data.name() != name { return }
|
||||
|
||||
match hash {
|
||||
Some(hash) if *hash == data.hash() => { ret = Some(cnum); return }
|
||||
Some(hash) if hash == data.hash() => { ret = Some(cnum); return }
|
||||
Some(..) => return,
|
||||
None => {}
|
||||
}
|
||||
|
@ -410,10 +409,10 @@ impl<'a> CrateLoader<'a> {
|
|||
let (root, hash, host_hash, extra_filename, path_kind) = match dep {
|
||||
Some((root, dep)) => (
|
||||
Some(root),
|
||||
Some(&dep.hash),
|
||||
dep.host_hash.as_ref(),
|
||||
Some(dep.hash),
|
||||
dep.host_hash,
|
||||
Some(&dep.extra_filename[..]),
|
||||
PathKind::Dependency
|
||||
PathKind::Dependency,
|
||||
),
|
||||
None => (None, None, None, None, PathKind::Crate),
|
||||
};
|
||||
|
|
|
@ -262,8 +262,8 @@ crate struct CrateLocator<'a> {
|
|||
// Immutable per-search configuration.
|
||||
crate_name: Symbol,
|
||||
exact_paths: Vec<PathBuf>,
|
||||
pub hash: Option<&'a Svh>,
|
||||
pub host_hash: Option<&'a Svh>,
|
||||
pub hash: Option<Svh>,
|
||||
pub host_hash: Option<Svh>,
|
||||
extra_filename: Option<&'a str>,
|
||||
pub target: &'a Target,
|
||||
pub triple: TargetTriple,
|
||||
|
@ -313,8 +313,8 @@ impl<'a> CrateLocator<'a> {
|
|||
sess: &'a Session,
|
||||
metadata_loader: &'a dyn MetadataLoader,
|
||||
crate_name: Symbol,
|
||||
hash: Option<&'a Svh>,
|
||||
host_hash: Option<&'a Svh>,
|
||||
hash: Option<Svh>,
|
||||
host_hash: Option<Svh>,
|
||||
extra_filename: Option<&'a str>,
|
||||
is_host: bool,
|
||||
path_kind: PathKind,
|
||||
|
@ -792,7 +792,7 @@ impl<'a> CrateLocator<'a> {
|
|||
}
|
||||
|
||||
let hash = root.hash();
|
||||
if let Some(&expected_hash) = self.hash {
|
||||
if let Some(expected_hash) = self.hash {
|
||||
if hash != expected_hash {
|
||||
info!("Rejecting via hash: expected {} got {}", expected_hash, hash);
|
||||
self.rejected_via_hash.push(CrateMismatch {
|
||||
|
|
Loading…
Reference in New Issue