|
1 | | -use rustc_ast::{MetaItemInner, MetaItemKind, ast, attr}; |
2 | | -use rustc_attr::{InlineAttr, InstructionSetAttr, OptimizeAttr, list_contains_name}; |
| 1 | +use rustc_ast::{ast, attr, MetaItemInner, MetaItemKind}; |
| 2 | +use rustc_attr::{list_contains_name, InlineAttr, InstructionSetAttr, OptimizeAttr}; |
3 | 3 | use rustc_data_structures::fx::FxHashMap; |
4 | 4 | use rustc_errors::codes::*; |
5 | | -use rustc_errors::{DiagMessage, SubdiagMessage, struct_span_code_err}; |
| 5 | +use rustc_errors::{struct_span_code_err, DiagMessage, SubdiagMessage}; |
6 | 6 | use rustc_hir as hir; |
7 | 7 | use rustc_hir::def::DefKind; |
8 | | -use rustc_hir::def_id::{DefId, LOCAL_CRATE, LocalDefId}; |
| 8 | +use rustc_hir::def_id::{DefId, LocalDefId, LOCAL_CRATE}; |
9 | 9 | use rustc_hir::weak_lang_items::WEAK_LANG_ITEMS; |
10 | | -use rustc_hir::{LangItem, lang_items}; |
| 10 | +use rustc_hir::{lang_items, LangItem}; |
11 | 11 | use rustc_middle::middle::codegen_fn_attrs::{ |
12 | 12 | CodegenFnAttrFlags, CodegenFnAttrs, PatchableFunctionEntry, |
13 | 13 | }; |
14 | 14 | use rustc_middle::mir::mono::Linkage; |
15 | 15 | use rustc_middle::query::Providers; |
16 | 16 | use rustc_middle::ty::{self as ty, TyCtxt}; |
17 | 17 | use rustc_session::parse::feature_err; |
18 | | -use rustc_session::{Session, lint}; |
| 18 | +use rustc_session::{lint, Session}; |
19 | 19 | use rustc_span::symbol::Ident; |
20 | | -use rustc_span::{Span, sym}; |
21 | | -use rustc_target::spec::{SanitizerSet, abi}; |
| 20 | +use rustc_span::{sym, Span}; |
| 21 | +use rustc_target::spec::{abi, SanitizerSet}; |
22 | 22 |
|
23 | 23 | use crate::errors; |
24 | 24 | use crate::target_features::{check_target_feature_trait_unsafe, from_target_feature_attr}; |
@@ -380,38 +380,10 @@ fn codegen_fn_attrs(tcx: TyCtxt<'_>, did: LocalDefId) -> CodegenFnAttrs { |
380 | 380 | unreachable!() |
381 | 381 | } |
382 | 382 | } |
383 | | - _ => { |
384 | | - struct_span_code_err!( |
385 | | - tcx.dcx(), |
386 | | - attr.span, |
387 | | - E0779, |
388 | | - "invalid instruction set specified", |
389 | | - ) |
390 | | - .emit(); |
391 | | - None |
392 | | - } |
| 383 | + _ => None, |
393 | 384 | } |
394 | 385 | } |
395 | | - [] => { |
396 | | - struct_span_code_err!( |
397 | | - tcx.dcx(), |
398 | | - attr.span, |
399 | | - E0778, |
400 | | - "`#[instruction_set]` requires an argument" |
401 | | - ) |
402 | | - .emit(); |
403 | | - None |
404 | | - } |
405 | | - _ => { |
406 | | - struct_span_code_err!( |
407 | | - tcx.dcx(), |
408 | | - attr.span, |
409 | | - E0779, |
410 | | - "cannot specify more than one instruction set" |
411 | | - ) |
412 | | - .emit(); |
413 | | - None |
414 | | - } |
| 386 | + _ => None, |
415 | 387 | }) |
416 | 388 | } |
417 | 389 | sym::repr => { |
|
0 commit comments