From db74efce69711fcee03d3338afcbca67c27ceee8 Mon Sep 17 00:00:00 2001 From: Vadim Petrochenkov Date: Sun, 17 Mar 2019 14:17:47 +0300 Subject: Make meta-item API compatible with `LocalInternedString::get` soundness fix --- src/libsyntax_ext/deriving/generic/mod.rs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/libsyntax_ext') diff --git a/src/libsyntax_ext/deriving/generic/mod.rs b/src/libsyntax_ext/deriving/generic/mod.rs index 2bb98c1bf62..c790e6ba7f1 100644 --- a/src/libsyntax_ext/deriving/generic/mod.rs +++ b/src/libsyntax_ext/deriving/generic/mod.rs @@ -463,9 +463,10 @@ impl<'a> TraitDef<'a> { let mut attrs = newitem.attrs.clone(); attrs.extend(item.attrs .iter() - .filter(|a| a.ident_str().map_or(false, |name| { - ["allow", "warn", "deny", "forbid", "stable", "unstable"].contains(&name) - })) + .filter(|a| { + ["allow", "warn", "deny", "forbid", "stable", "unstable"] + .contains(&a.name_or_empty().get()) + }) .cloned()); push(Annotatable::Item(P(ast::Item { attrs: attrs, ..(*newitem).clone() }))) } -- cgit 1.4.1-3-g733a5