diff options
| author | bors <bors@rust-lang.org> | 2023-11-17 16:49:58 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2023-11-17 16:49:58 +0000 |
| commit | e886137e18e7bd312b1bd5e3ee9364734673b23c (patch) | |
| tree | 37d208b5fd923b967b12b469dd2a469fdd5b7632 /compiler/rustc_interface/src/interface.rs | |
| parent | 069a4af48b4b2111ff65f3895edb425683e6ae8a (diff) | |
| parent | 9582172964608c7eed72a79d05a7e0ed58b23bca (diff) | |
| download | rust-e886137e18e7bd312b1bd5e3ee9364734673b23c.tar.gz rust-e886137e18e7bd312b1bd5e3ee9364734673b23c.zip | |
Auto merge of #117993 - nnethercote:streamline-Linker, r=bjorn3
Streamline `Linker` r? `@bjorn3`
Diffstat (limited to 'compiler/rustc_interface/src/interface.rs')
| -rw-r--r-- | compiler/rustc_interface/src/interface.rs | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/compiler/rustc_interface/src/interface.rs b/compiler/rustc_interface/src/interface.rs index d113e038966..6225424fe4a 100644 --- a/compiler/rustc_interface/src/interface.rs +++ b/compiler/rustc_interface/src/interface.rs @@ -38,17 +38,17 @@ pub type Result<T> = result::Result<T, ErrorGuaranteed>; /// Can be used to run `rustc_interface` queries. /// Created by passing [`Config`] to [`run_compiler`]. pub struct Compiler { - pub(crate) sess: Lrc<Session>, - codegen_backend: Lrc<dyn CodegenBackend>, + sess: Session, + codegen_backend: Box<dyn CodegenBackend>, pub(crate) override_queries: Option<fn(&Session, &mut Providers)>, } impl Compiler { - pub fn session(&self) -> &Lrc<Session> { + pub fn session(&self) -> &Session { &self.sess } - pub fn codegen_backend(&self) -> &Lrc<dyn CodegenBackend> { - &self.codegen_backend + pub fn codegen_backend(&self) -> &dyn CodegenBackend { + &*self.codegen_backend } pub fn build_output_filenames( &self, @@ -491,11 +491,8 @@ pub fn run_compiler<R: Send>(config: Config, f: impl FnOnce(&Compiler) -> R + Se } sess.lint_store = Some(Lrc::new(lint_store)); - let compiler = Compiler { - sess: Lrc::new(sess), - codegen_backend: Lrc::from(codegen_backend), - override_queries: config.override_queries, - }; + let compiler = + Compiler { sess, codegen_backend, override_queries: config.override_queries }; rustc_span::set_source_map(compiler.sess.parse_sess.clone_source_map(), move || { let r = { |
