Skip to content

Commit

Permalink
metadata: Remove CrateMetadata::host_lib
Browse files Browse the repository at this point in the history
It was only used for retreiving edition, which was a bug.
In case of dual proc macros the edition should be taken from the target crate version, like any other metadata.
  • Loading branch information
petrochenkov committed Oct 3, 2019
1 parent 92386a7 commit f13adc5
Show file tree
Hide file tree
Showing 3 changed files with 1 addition and 9 deletions.
1 change: 0 additions & 1 deletion src/librustc_metadata/creader.rs
Expand Up @@ -271,7 +271,6 @@ impl<'a> CrateLoader<'a> {
},
private_dep,
span,
host_lib,
raw_proc_macros
};

Expand Down
2 changes: 0 additions & 2 deletions src/librustc_metadata/cstore.rs
Expand Up @@ -28,7 +28,6 @@ pub use crate::cstore_impl::{provide, provide_extern};
pub type CrateNumMap = IndexVec<CrateNum, CrateNum>;

pub use rustc_data_structures::sync::MetadataRef;
use crate::creader::Library;
use syntax_pos::Span;
use proc_macro::bridge::client::ProcMacro;

Expand Down Expand Up @@ -85,7 +84,6 @@ pub struct CrateMetadata {
/// for purposes of the 'exported_private_dependencies' lint
pub private_dep: bool,

pub host_lib: Option<Library>,
pub span: Span,

pub raw_proc_macros: Option<&'static [ProcMacro]>,
Expand Down
7 changes: 1 addition & 6 deletions src/librustc_metadata/decoder.rs
Expand Up @@ -543,18 +543,13 @@ impl<'a, 'tcx> CrateMetadata {
name, SyntaxExtensionKind::Bang(Box::new(BangProcMacro { client })), Vec::new()
)
};
let edition = if sess.opts.debugging_opts.dual_proc_macros {
self.host_lib.as_ref().unwrap().metadata.get_root().edition
} else {
self.root.edition
};

SyntaxExtension::new(
&sess.parse_sess,
kind,
self.get_span(id, sess),
helper_attrs,
edition,
self.root.edition,
Symbol::intern(name),
&self.get_attributes(&self.entry(id), sess),
)
Expand Down

0 comments on commit f13adc5

Please sign in to comment.