about summary refs log tree commit diff
path: root/compiler/rustc_mir_dataflow/src/errors.rs
diff options
context:
space:
mode:
author5225225 <5225225@mailbox.org>2022-08-19 10:21:14 +0100
committer5225225 <5225225@mailbox.org>2022-08-23 11:24:51 +0100
commitee2b16100e2fad2c08f01f913b826c00024f85a8 (patch)
treea307e427dd7b2ef5cf19259e88ec9d03d454d170 /compiler/rustc_mir_dataflow/src/errors.rs
parent38528d4dc0a0c079069764f23f11ef9f4fba2f95 (diff)
downloadrust-ee2b16100e2fad2c08f01f913b826c00024f85a8.tar.gz
rust-ee2b16100e2fad2c08f01f913b826c00024f85a8.zip
Migrate rustc_mir_dataflow to diagnostic structs
Diffstat (limited to 'compiler/rustc_mir_dataflow/src/errors.rs')
-rw-r--r--compiler/rustc_mir_dataflow/src/errors.rs71
1 files changed, 71 insertions, 0 deletions
diff --git a/compiler/rustc_mir_dataflow/src/errors.rs b/compiler/rustc_mir_dataflow/src/errors.rs
new file mode 100644
index 00000000000..a30bf35fa1a
--- /dev/null
+++ b/compiler/rustc_mir_dataflow/src/errors.rs
@@ -0,0 +1,71 @@
+use rustc_macros::SessionDiagnostic;
+use rustc_span::{Span, Symbol};
+
+#[derive(SessionDiagnostic)]
+#[diag(rustc_mir_dataflow::path_must_end_in_filename)]
+pub(crate) struct PathMustEndInFilename {
+    #[primary_span]
+    pub span: Span,
+}
+
+#[derive(SessionDiagnostic)]
+#[diag(rustc_mir_dataflow::unknown_formatter)]
+pub(crate) struct UnknownFormatter {
+    #[primary_span]
+    pub span: Span,
+}
+
+#[derive(SessionDiagnostic)]
+#[diag(rustc_mir_dataflow::duplicate_values_for)]
+pub(crate) struct DuplicateValuesFor {
+    #[primary_span]
+    pub span: Span,
+    pub name: Symbol,
+}
+
+#[derive(SessionDiagnostic)]
+#[diag(rustc_mir_dataflow::requires_an_argument)]
+pub(crate) struct RequiresAnArgument {
+    #[primary_span]
+    pub span: Span,
+    pub name: Symbol,
+}
+
+#[derive(SessionDiagnostic)]
+#[diag(rustc_mir_dataflow::stop_after_dataflow_ended_compilation)]
+pub(crate) struct StopAfterDataFlowEndedCompilation;
+
+#[derive(SessionDiagnostic)]
+#[diag(rustc_mir_dataflow::peek_must_be_place_or_ref_place)]
+pub(crate) struct PeekMustBePlaceOrRefPlace {
+    #[primary_span]
+    pub span: Span,
+}
+
+#[derive(SessionDiagnostic)]
+#[diag(rustc_mir_dataflow::peek_must_be_not_temporary)]
+pub(crate) struct PeekMustBeNotTemporary {
+    #[primary_span]
+    pub span: Span,
+}
+
+#[derive(SessionDiagnostic)]
+#[diag(rustc_mir_dataflow::peek_bit_not_set)]
+pub(crate) struct PeekBitNotSet {
+    #[primary_span]
+    pub span: Span,
+}
+
+#[derive(SessionDiagnostic)]
+#[diag(rustc_mir_dataflow::peek_argument_not_a_local)]
+pub(crate) struct PeekArgumentNotALocal {
+    #[primary_span]
+    pub span: Span,
+}
+
+#[derive(SessionDiagnostic)]
+#[diag(rustc_mir_dataflow::peek_argument_untracked)]
+pub(crate) struct PeekArgumentUntracked {
+    #[primary_span]
+    pub span: Span,
+}