in src/bindgen/utilities.rs [155:174]
fn has_unsafe_attr_word(&self, name: &str) -> bool {
for attr in self.attrs() {
let unsafe_list = match &attr.meta {
syn::Meta::List(list) if list.path.is_ident("unsafe") => list,
_ => continue,
};
let args: syn::punctuated::Punctuated<syn::Path, Token![,]> =
match unsafe_list.parse_args_with(syn::punctuated::Punctuated::parse_terminated) {
Ok(args) => args,
Err(..) => {
warn!("couldn't parse unsafe() attribute");
continue;
}
};
if args.iter().any(|a| a.is_ident(name)) {
return true;
}
}
false
}