Skip to content

Commit 121abd0

Browse files
committed
make it compile again
1 parent 24a6284 commit 121abd0

File tree

20 files changed

+92
-94
lines changed

20 files changed

+92
-94
lines changed

src/librustc/hir/check_attr.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -308,7 +308,7 @@ impl<'a, 'tcx> CheckAttrVisitor<'a, 'tcx> {
308308

309309
fn check_used(&self, item: &hir::Item, target: Target) {
310310
for attr in &item.attrs {
311-
if attr.name().map(|name| name == "used").unwrap_or(false) && target != Target::Static {
311+
if attr.name() == "used" && target != Target::Static {
312312
self.tcx.sess
313313
.span_err(attr.span, "attribute must be applied to a `static` variable");
314314
}

src/librustc/ich/impls_syntax.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -216,7 +216,7 @@ impl<'a> HashStable<StableHashingContext<'a>> for ast::Path {
216216
hasher: &mut StableHasher<W>) {
217217
self.segments.len().hash_stable(hcx, hasher);
218218
for segment in &self.segments {
219-
segment.identifier.name.hash_stable(hcx, hasher);
219+
segment.ident.name.hash_stable(hcx, hasher);
220220
}
221221
}
222222
}

src/librustc/lint/levels.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ impl<'a> LintLevelsBuilder<'a> {
221221
continue
222222
}
223223
};
224-
let name = word.ident.name;
224+
let name = word.name();
225225
match store.check_lint_name(&name.as_str()) {
226226
CheckLintNameResult::Ok(ids) => {
227227
let src = LintSource::Node(name, li.span);
@@ -260,7 +260,7 @@ impl<'a> LintLevelsBuilder<'a> {
260260
Some(li.span.into()),
261261
&msg);
262262
if name.as_str().chars().any(|c| c.is_uppercase()) {
263-
let name_lower = name.as_str().to_lowercase();
263+
let name_lower = name.as_str().to_lowercase().to_string();
264264
if let CheckLintNameResult::NoLint =
265265
store.check_lint_name(&name_lower) {
266266
db.emit();

src/librustc/session/config.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1683,7 +1683,7 @@ pub fn parse_cfgspecs(cfgspecs: Vec<String>) -> ast::CrateConfig {
16831683
early_error(ErrorOutputType::default(), &msg)
16841684
}
16851685

1686-
(meta_item.ident.name, meta_item.value_str())
1686+
(meta_item.name(), meta_item.value_str())
16871687
})
16881688
.collect::<ast::CrateConfig>()
16891689
}

src/librustc/traits/on_unimplemented.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,7 @@ impl<'a, 'gcx, 'tcx> OnUnimplementedDirective {
190190
for command in self.subcommands.iter().chain(Some(self)).rev() {
191191
if let Some(ref condition) = command.condition {
192192
if !attr::eval_condition(condition, &tcx.sess.parse_sess, &mut |c| {
193-
options.contains(&(c.ident.name.as_str().to_string(),
193+
options.contains(&(c.name().as_str().to_string(),
194194
match c.value_str().map(|s| s.as_str().to_string()) {
195195
Some(s) => Some(s),
196196
None => None

src/librustc_driver/lib.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1060,7 +1060,7 @@ impl RustcDefaultCalls {
10601060
let mut cfgs = Vec::new();
10611061
for &(name, ref value) in sess.parse_sess.config.iter() {
10621062
let gated_cfg = GatedCfg::gate(&ast::MetaItem {
1063-
name: ast::Path::from_ident(DUMMY_SP, name.to_ident()),
1063+
ident: ast::Path::from_ident(name.to_ident()),
10641064
node: ast::MetaItemKind::Word,
10651065
span: DUMMY_SP,
10661066
});

src/librustc_incremental/assert_dep_graph.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ impl<'a, 'tcx> IfThisChanged<'a, 'tcx> {
110110
for list_item in attr.meta_item_list().unwrap_or_default() {
111111
match list_item.word() {
112112
Some(word) if value.is_none() =>
113-
value = Some(word.ident.name),
113+
value = Some(word.name()),
114114
_ =>
115115
// FIXME better-encapsulate meta_item (don't directly access `node`)
116116
span_bug!(list_item.span(), "unexpected meta-item {:?}", list_item.node),

src/librustc_resolve/build_reduced_graph.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -702,7 +702,7 @@ impl<'a> Resolver<'a> {
702702
match attr.meta_item_list() {
703703
Some(names) => for attr in names {
704704
if let Some(word) = attr.word() {
705-
imports.imports.push((word.ident.name, attr.span()));
705+
imports.imports.push((word.name(), attr.span()));
706706
} else {
707707
span_err!(self.session, attr.span(), E0466, "bad macro import");
708708
}

src/librustdoc/clean/cfg.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -438,7 +438,7 @@ mod test {
438438

439439
fn dummy_meta_item_word(name: &str) -> MetaItem {
440440
MetaItem {
441-
name: Path::from_ident(DUMMY_SP, Ident::from_str(name)),
441+
ident: Path::from_ident(Ident::from_str(name)),
442442
node: MetaItemKind::Word,
443443
span: DUMMY_SP,
444444
}
@@ -447,7 +447,7 @@ mod test {
447447
macro_rules! dummy_meta_item_list {
448448
($name:ident, [$($list:ident),* $(,)*]) => {
449449
MetaItem {
450-
name: Path::from_ident(DUMMY_SP, Ident::from_str(stringify!($name))),
450+
ident: Path::from_ident(Ident::from_str(stringify!($name))),
451451
node: MetaItemKind::List(vec![
452452
$(
453453
dummy_spanned(NestedMetaItemKind::MetaItem(
@@ -461,7 +461,7 @@ mod test {
461461

462462
($name:ident, [$($list:expr),* $(,)*]) => {
463463
MetaItem {
464-
name: Path::from_ident(DUMMY_SP, Ident::from_str(stringify!($name))),
464+
ident: Path::from_ident(Ident::from_str(stringify!($name))),
465465
node: MetaItemKind::List(vec![
466466
$(
467467
dummy_spanned(NestedMetaItemKind::MetaItem($list)),
@@ -601,7 +601,7 @@ mod test {
601601
assert_eq!(Cfg::parse(&mi), Ok(word_cfg("all")));
602602

603603
let mi = MetaItem {
604-
name: Path::from_ident(DUMMY_SP, Ident::from_str("all")),
604+
ident: Path::from_ident(Ident::from_str("all")),
605605
node: MetaItemKind::NameValue(dummy_spanned(LitKind::Str(
606606
Symbol::intern("done"),
607607
StrStyle::Cooked,
@@ -636,7 +636,7 @@ mod test {
636636
fn test_parse_err() {
637637
with_globals(|| {
638638
let mi = MetaItem {
639-
name: Path::from_ident(DUMMY_SP, Ident::from_str("foo")),
639+
ident: Path::from_ident(Ident::from_str("foo")),
640640
node: MetaItemKind::NameValue(dummy_spanned(LitKind::Bool(false))),
641641
span: DUMMY_SP,
642642
};

src/librustdoc/html/render.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -3284,7 +3284,7 @@ fn item_enum(w: &mut fmt::Formatter, cx: &Context, it: &clean::Item,
32843284
}
32853285

32863286
fn render_attribute(attr: &ast::MetaItem) -> Option<String> {
3287-
let name = attr.ident.name;
3287+
let name = attr.name();
32883288

32893289
if attr.is_word() {
32903290
Some(format!("{}", name))

src/libsyntax/ast.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -477,7 +477,7 @@ pub enum NestedMetaItemKind {
477477
/// E.g. `#[test]`, `#[derive(..)]`, `#[rustfmt::skip]` or `#[feature = "foo"]`
478478
#[derive(Clone, PartialEq, Eq, RustcEncodable, RustcDecodable, Hash, Debug)]
479479
pub struct MetaItem {
480-
pub name: Path,
480+
pub ident: Path,
481481
pub node: MetaItemKind,
482482
pub span: Span,
483483
}

src/libsyntax/attr.rs

+32-51
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ use ast;
1818
use ast::{AttrId, Attribute, Name, Ident};
1919
use ast::{MetaItem, MetaItemKind, NestedMetaItem, NestedMetaItemKind};
2020
use ast::{Lit, LitKind, Expr, ExprKind, Item, Local, Stmt, StmtKind};
21-
use codemap::{Spanned, respan, dummy_spanned};
21+
use codemap::{BytePos, Spanned, respan, dummy_spanned};
2222
use syntax_pos::Span;
2323
use errors::Handler;
2424
use feature_gate::{Features, GatedCfg};
@@ -111,7 +111,7 @@ const RUST_KNOWN_TOOL: &[&str] = &["clippy", "rustfmt"];
111111

112112
pub fn is_known_tool(attr: &Attribute) -> bool {
113113
let tool_name =
114-
attr.path.segments.iter().next().expect("empty path in attribute").identifier.name;
114+
attr.path.segments.iter().next().expect("empty path in attribute").ident.name;
115115
RUST_KNOWN_TOOL.contains(&tool_name.as_str().as_ref())
116116
}
117117

@@ -213,7 +213,7 @@ impl NestedMetaItem {
213213
}
214214

215215
fn name_from_path(path: &ast::Path) -> Name {
216-
path.segments.last().expect("empty path in attribute").identifier.name
216+
path.segments.last().expect("empty path in attribute").ident.name
217217
}
218218

219219
impl Attribute {
@@ -266,7 +266,7 @@ impl Attribute {
266266

267267
impl MetaItem {
268268
pub fn name(&self) -> Name {
269-
name_from_path(&self.name)
269+
name_from_path(&self.ident)
270270
}
271271

272272
pub fn value_str(&self) -> Option<Symbol> {
@@ -315,7 +315,7 @@ impl Attribute {
315315
pub fn meta(&self) -> Option<MetaItem> {
316316
let mut tokens = self.tokens.trees().peekable();
317317
Some(MetaItem {
318-
name: self.path.clone(),
318+
ident: self.path.clone(),
319319
node: if let Some(node) = MetaItemKind::from_tokens(&mut tokens) {
320320
if tokens.peek().is_some() {
321321
return None;
@@ -361,7 +361,7 @@ impl Attribute {
361361

362362
pub fn parse_meta<'a>(&self, sess: &'a ParseSess) -> PResult<'a, MetaItem> {
363363
Ok(MetaItem {
364-
name: self.path.clone(),
364+
ident: self.path.clone(),
365365
node: self.parse(sess, |parser| parser.parse_meta_item_kind())?,
366366
span: self.span,
367367
})
@@ -399,41 +399,19 @@ pub fn mk_name_value_item_str(ident: Ident, value: Spanned<Symbol>) -> MetaItem
399399
}
400400

401401
pub fn mk_name_value_item(span: Span, ident: Ident, value: ast::Lit) -> MetaItem {
402-
MetaItem { ident, span, node: MetaItemKind::NameValue(value) }
402+
MetaItem { ident: ast::Path::from_ident(ident), span, node: MetaItemKind::NameValue(value) }
403403
}
404404

405405
pub fn mk_list_item(span: Span, ident: Ident, items: Vec<NestedMetaItem>) -> MetaItem {
406-
MetaItem { ident, span, node: MetaItemKind::List(items) }
406+
MetaItem { ident: ast::Path::from_ident(ident), span, node: MetaItemKind::List(items) }
407407
}
408408

409409
pub fn mk_word_item(ident: Ident) -> MetaItem {
410-
MetaItem { ident, span: ident.span, node: MetaItemKind::Word }
410+
MetaItem { ident: ast::Path::from_ident(ident), span: ident.span, node: MetaItemKind::Word }
411411
}
412412

413-
pub fn mk_word_item(name: Name) -> MetaItem {
414-
mk_spanned_word_item(DUMMY_SP, name)
415-
}
416-
417-
macro_rules! mk_spanned_meta_item {
418-
($sp:ident, $name:ident, $node:expr) => {
419-
MetaItem {
420-
span: $sp,
421-
name: ast::Path::from_ident($sp, ast::Ident::with_empty_ctxt($name)),
422-
node: $node,
423-
}
424-
}
425-
}
426-
427-
pub fn mk_spanned_name_value_item(sp: Span, name: Name, value: ast::Lit) -> MetaItem {
428-
mk_spanned_meta_item!(sp, name, MetaItemKind::NameValue(value))
429-
}
430-
431-
pub fn mk_spanned_list_item(sp: Span, name: Name, items: Vec<NestedMetaItem>) -> MetaItem {
432-
mk_spanned_meta_item!(sp, name, MetaItemKind::List(items))
433-
}
434-
435-
pub fn mk_spanned_word_item(sp: Span, name: Name) -> MetaItem {
436-
mk_spanned_meta_item!(sp, name, MetaItemKind::Word)
413+
pub fn mk_nested_word_item(ident: Ident) -> NestedMetaItem {
414+
respan(ident.span, NestedMetaItemKind::MetaItem(mk_word_item(ident)))
437415
}
438416

439417
pub fn mk_attr_id() -> AttrId {
@@ -457,7 +435,7 @@ pub fn mk_spanned_attr_inner(sp: Span, id: AttrId, item: MetaItem) -> Attribute
457435
Attribute {
458436
id,
459437
style: ast::AttrStyle::Inner,
460-
path: item.name,
438+
path: item.ident,
461439
tokens: item.node.tokens(item.span),
462440
is_sugared_doc: false,
463441
span: sp,
@@ -475,7 +453,7 @@ pub fn mk_spanned_attr_outer(sp: Span, id: AttrId, item: MetaItem) -> Attribute
475453
Attribute {
476454
id,
477455
style: ast::AttrStyle::Outer,
478-
path: item.name,
456+
path: item.ident,
479457
tokens: item.node.tokens(item.span),
480458
is_sugared_doc: false,
481459
span: sp,
@@ -1082,7 +1060,7 @@ pub fn find_repr_attrs(diagnostic: &Handler, attr: &Attribute) -> Vec<ReprAttr>
10821060
}
10831061
} else {
10841062
if let Some(meta_item) = item.meta_item() {
1085-
if meta_item.ident.name == "align" {
1063+
if meta_item.name() == "align" {
10861064
if let MetaItemKind::NameValue(ref value) = meta_item.node {
10871065
recognised = true;
10881066
let mut err = struct_span_err!(diagnostic, item.span, E0693,
@@ -1165,14 +1143,17 @@ impl MetaItem {
11651143
let mut idents = vec![];
11661144
let mut last_pos = BytePos(0 as u32);
11671145
// FIXME: Share code with `parse_path`.
1168-
for (i, segment) in self.name.segments.iter().enumerate() {
1146+
for (i, segment) in self.ident.segments.iter().enumerate() {
11691147
let is_first = i == 0;
11701148
if !is_first {
1171-
let mod_sep_span = Span::new(last_pos, segment.span.lo(), segment.span.ctxt());
1149+
let mod_sep_span = Span::new(last_pos,
1150+
segment.ident.span.lo(),
1151+
segment.ident.span.ctxt());
11721152
idents.push(TokenTree::Token(mod_sep_span, Token::ModSep).into());
11731153
}
1174-
idents.push(TokenTree::Token(segment.span, Token::Ident(segment.identifier)).into());
1175-
last_pos = segment.span.hi();
1154+
idents.push(TokenTree::Token(segment.ident.span,
1155+
Token::from_ast_ident(segment.ident)).into());
1156+
last_pos = segment.ident.span.hi();
11761157
}
11771158
idents.push(self.node.tokens(self.span));
11781159
TokenStream::concat(idents)
@@ -1181,14 +1162,14 @@ impl MetaItem {
11811162
fn from_tokens<I>(tokens: &mut iter::Peekable<I>) -> Option<MetaItem>
11821163
where I: Iterator<Item = TokenTree>,
11831164
{
1184-
let name = match tokens.next() {
1185-
Some(TokenTree::Token(span, Token::Ident(ident))) => {
1165+
let ident = match tokens.next() {
1166+
Some(TokenTree::Token(span, Token::Ident(ident, _))) => {
11861167
if let Some(TokenTree::Token(_, Token::ModSep)) = tokens.peek() {
11871168
tokens.next();
11881169
let mut segments = vec![];
11891170
loop {
1190-
if let Some(TokenTree::Token(span, Token::Ident(ident))) = tokens.next() {
1191-
segments.push(ast::PathSegment::from_ident(ident, span));
1171+
if let Some(TokenTree::Token(_, Token::Ident(ident, _))) = tokens.next() {
1172+
segments.push(ast::PathSegment::from_ident(ident));
11921173
} else {
11931174
return None;
11941175
}
@@ -1200,12 +1181,12 @@ impl MetaItem {
12001181
}
12011182
ast::Path { span, segments }
12021183
} else {
1203-
ast::Path::from_ident(span, ident)
1184+
ast::Path::from_ident(ident)
12041185
}
12051186
}
12061187
Some(TokenTree::Token(_, Token::Interpolated(ref nt))) => match nt.0 {
1207-
token::Nonterminal::NtIdent(ident) => {
1208-
ast::Path::from_ident(ident.span, ident.node)
1188+
token::Nonterminal::NtIdent(ident, _) => {
1189+
ast::Path::from_ident(ident)
12091190
}
12101191
token::Nonterminal::NtMeta(ref meta) => return Some(meta.clone()),
12111192
token::Nonterminal::NtPath(ref path) => path.clone(),
@@ -1217,11 +1198,11 @@ impl MetaItem {
12171198
let node = MetaItemKind::from_tokens(tokens)?;
12181199
let hi = match node {
12191200
MetaItemKind::NameValue(ref lit) => lit.span.hi(),
1220-
MetaItemKind::List(..) => list_closing_paren_pos.unwrap_or(name.span.hi()),
1221-
_ => name.span.hi(),
1201+
MetaItemKind::List(..) => list_closing_paren_pos.unwrap_or(ident.span.hi()),
1202+
_ => ident.span.hi(),
12221203
};
1223-
let span = name.span.with_hi(hi);
1224-
Some(MetaItem { name, node, span })
1204+
let span = ident.span.with_hi(hi);
1205+
Some(MetaItem { ident, node, span })
12251206
}
12261207
}
12271208

src/libsyntax/ext/expand.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -810,7 +810,7 @@ impl<'a, 'b> MacroExpander<'a, 'b> {
810810
invoc.expansion_data.mark.set_expn_info(expn_info);
811811
let span = span.with_ctxt(self.cx.backtrace());
812812
let dummy = ast::MetaItem { // FIXME(jseyfried) avoid this
813-
name: Path::from_ident(DUMMY_SP, keywords::Invalid.ident()),
813+
ident: Path::from_ident(keywords::Invalid.ident()),
814814
span: DUMMY_SP,
815815
node: ast::MetaItemKind::Word,
816816
};

0 commit comments

Comments
 (0)