rustc_ast_lowering: make asm-related unstability messages translatable
This commit is contained in:
parent
290df4fa56
commit
67602980de
2 changed files with 21 additions and 7 deletions
|
@ -174,6 +174,13 @@ ast_lowering_underscore_expr_lhs_assign =
|
||||||
in expressions, `_` can only be used on the left-hand side of an assignment
|
in expressions, `_` can only be used on the left-hand side of an assignment
|
||||||
.label = `_` not allowed here
|
.label = `_` not allowed here
|
||||||
|
|
||||||
|
ast_lowering_unstable_inline_assembly = inline assembly is not stable yet on this architecture
|
||||||
|
ast_lowering_unstable_inline_assembly_const_operands =
|
||||||
|
const operands for inline assembly are unstable
|
||||||
|
ast_lowering_unstable_inline_assembly_label_operands =
|
||||||
|
label operands for inline assembly are unstable
|
||||||
|
ast_lowering_unstable_may_unwind = the `may_unwind` option is unstable
|
||||||
|
|
||||||
ast_lowering_use_angle_brackets = use angle brackets instead
|
ast_lowering_use_angle_brackets = use angle brackets instead
|
||||||
|
|
||||||
ast_lowering_yield = yield syntax is experimental
|
ast_lowering_yield = yield syntax is experimental
|
||||||
|
|
|
@ -19,10 +19,12 @@ use super::errors::{
|
||||||
InvalidRegisterClass, RegisterClassOnlyClobber, RegisterConflict,
|
InvalidRegisterClass, RegisterClassOnlyClobber, RegisterConflict,
|
||||||
};
|
};
|
||||||
use super::LoweringContext;
|
use super::LoweringContext;
|
||||||
use crate::{ImplTraitContext, ImplTraitPosition, ParamMode, ResolverAstLoweringExt};
|
use crate::{
|
||||||
|
fluent_generated as fluent, ImplTraitContext, ImplTraitPosition, ParamMode,
|
||||||
|
ResolverAstLoweringExt,
|
||||||
|
};
|
||||||
|
|
||||||
impl<'a, 'hir> LoweringContext<'a, 'hir> {
|
impl<'a, 'hir> LoweringContext<'a, 'hir> {
|
||||||
#[allow(rustc::untranslatable_diagnostic)] // FIXME: make this translatable
|
|
||||||
pub(crate) fn lower_inline_asm(
|
pub(crate) fn lower_inline_asm(
|
||||||
&mut self,
|
&mut self,
|
||||||
sp: Span,
|
sp: Span,
|
||||||
|
@ -52,7 +54,7 @@ impl<'a, 'hir> LoweringContext<'a, 'hir> {
|
||||||
&self.tcx.sess,
|
&self.tcx.sess,
|
||||||
sym::asm_experimental_arch,
|
sym::asm_experimental_arch,
|
||||||
sp,
|
sp,
|
||||||
"inline assembly is not stable yet on this architecture",
|
fluent::ast_lowering_unstable_inline_assembly,
|
||||||
)
|
)
|
||||||
.emit();
|
.emit();
|
||||||
}
|
}
|
||||||
|
@ -64,8 +66,13 @@ impl<'a, 'hir> LoweringContext<'a, 'hir> {
|
||||||
self.dcx().emit_err(AttSyntaxOnlyX86 { span: sp });
|
self.dcx().emit_err(AttSyntaxOnlyX86 { span: sp });
|
||||||
}
|
}
|
||||||
if asm.options.contains(InlineAsmOptions::MAY_UNWIND) && !self.tcx.features().asm_unwind {
|
if asm.options.contains(InlineAsmOptions::MAY_UNWIND) && !self.tcx.features().asm_unwind {
|
||||||
feature_err(&self.tcx.sess, sym::asm_unwind, sp, "the `may_unwind` option is unstable")
|
feature_err(
|
||||||
.emit();
|
&self.tcx.sess,
|
||||||
|
sym::asm_unwind,
|
||||||
|
sp,
|
||||||
|
fluent::ast_lowering_unstable_may_unwind,
|
||||||
|
)
|
||||||
|
.emit();
|
||||||
}
|
}
|
||||||
|
|
||||||
let mut clobber_abis = FxIndexMap::default();
|
let mut clobber_abis = FxIndexMap::default();
|
||||||
|
@ -182,7 +189,7 @@ impl<'a, 'hir> LoweringContext<'a, 'hir> {
|
||||||
sess,
|
sess,
|
||||||
sym::asm_const,
|
sym::asm_const,
|
||||||
*op_sp,
|
*op_sp,
|
||||||
"const operands for inline assembly are unstable",
|
fluent::ast_lowering_unstable_inline_assembly_const_operands,
|
||||||
)
|
)
|
||||||
.emit();
|
.emit();
|
||||||
}
|
}
|
||||||
|
@ -246,7 +253,7 @@ impl<'a, 'hir> LoweringContext<'a, 'hir> {
|
||||||
sess,
|
sess,
|
||||||
sym::asm_goto,
|
sym::asm_goto,
|
||||||
*op_sp,
|
*op_sp,
|
||||||
"label operands for inline assembly are unstable",
|
fluent::ast_lowering_unstable_inline_assembly_label_operands,
|
||||||
)
|
)
|
||||||
.emit();
|
.emit();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue