about summary refs log tree commit diff
path: root/compiler/rustc_codegen_llvm/src/errors.rs
diff options
context:
space:
mode:
authorRalf Jung <post@ralfj.de>2024-09-02 11:45:59 +0200
committerRalf Jung <post@ralfj.de>2024-11-04 22:56:47 +0100
commitffad9aac27ff8a78f5d751bf88250470e2e9d790 (patch)
tree32e348977a254c1e5cc14310bbcef11c0bfa2eb9 /compiler/rustc_codegen_llvm/src/errors.rs
parent2dece5bb62f234f5622a08289c5a3d1555cd7843 (diff)
downloadrust-ffad9aac27ff8a78f5d751bf88250470e2e9d790.tar.gz
rust-ffad9aac27ff8a78f5d751bf88250470e2e9d790.zip
mark some target features as 'forbidden' so they cannot be (un)set
For now, this is just a warning, but should become a hard error in the future
Diffstat (limited to 'compiler/rustc_codegen_llvm/src/errors.rs')
-rw-r--r--compiler/rustc_codegen_llvm/src/errors.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/compiler/rustc_codegen_llvm/src/errors.rs b/compiler/rustc_codegen_llvm/src/errors.rs
index 0d436e1891e..3cdb5b971d9 100644
--- a/compiler/rustc_codegen_llvm/src/errors.rs
+++ b/compiler/rustc_codegen_llvm/src/errors.rs
@@ -31,6 +31,15 @@ pub(crate) struct UnstableCTargetFeature<'a> {
     pub feature: &'a str,
 }
 
+#[derive(Diagnostic)]
+#[diag(codegen_llvm_forbidden_ctarget_feature)]
+#[note]
+#[note(codegen_llvm_forbidden_ctarget_feature_issue)]
+pub(crate) struct ForbiddenCTargetFeature<'a> {
+    pub feature: &'a str,
+    pub reason: &'a str,
+}
+
 #[derive(Subdiagnostic)]
 pub(crate) enum PossibleFeature<'a> {
     #[help(codegen_llvm_possible_feature)]