Don't call self.parse()
in Compiler::crate_name()
unless necessary.
This commit is contained in:
parent
dfd43f0fdd
commit
d61605cef8
1 changed files with 11 additions and 10 deletions
|
@ -126,17 +126,18 @@ impl Compiler {
|
||||||
|
|
||||||
pub fn crate_name(&self) -> Result<&Query<String>> {
|
pub fn crate_name(&self) -> Result<&Query<String>> {
|
||||||
self.queries.crate_name.compute(|| {
|
self.queries.crate_name.compute(|| {
|
||||||
let parse_result = self.parse()?;
|
Ok(match self.crate_name {
|
||||||
let krate = parse_result.peek();
|
|
||||||
let result = match self.crate_name {
|
|
||||||
Some(ref crate_name) => crate_name.clone(),
|
Some(ref crate_name) => crate_name.clone(),
|
||||||
None => rustc_codegen_utils::link::find_crate_name(
|
None => {
|
||||||
Some(self.session()),
|
let parse_result = self.parse()?;
|
||||||
&krate.attrs,
|
let krate = parse_result.peek();
|
||||||
&self.input
|
rustc_codegen_utils::link::find_crate_name(
|
||||||
),
|
Some(self.session()),
|
||||||
};
|
&krate.attrs,
|
||||||
Ok(result)
|
&self.input
|
||||||
|
)
|
||||||
|
}
|
||||||
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue