|
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