about summary refs log tree commit diff
path: root/src/librustc_errors/lib.rs
diff options
context:
space:
mode:
authorManish Goregaokar <manishsmail@gmail.com>2018-01-18 17:17:46 +0530
committerManish Goregaokar <manishsmail@gmail.com>2018-01-29 11:40:50 +0530
commit937bc2e04aaad37f97d367f7c5073c352e357bb5 (patch)
treed145db7363e4645e9fd8dea3ccd3e368c92ed180 /src/librustc_errors/lib.rs
parent385ef1514c80fb8c0cb061dc69eb1d953a84e2b3 (diff)
downloadrust-937bc2e04aaad37f97d367f7c5073c352e357bb5.tar.gz
rust-937bc2e04aaad37f97d367f7c5073c352e357bb5.zip
Add approximate suggestions for rustfix
This adds `span_approximate_suggestion()` that lets you emit a
suggestion marked as "approximate" in the JSON output. UI
users see no difference. This is for when rustc and clippy wish to
 emit suggestions which will make sense to the reader (e.g. they may
have placeholders like `<type>`) but are not source-applicable, so that
rustfix/etc can ignore these.

fixes #39254
Diffstat (limited to 'src/librustc_errors/lib.rs')
-rw-r--r--src/librustc_errors/lib.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/librustc_errors/lib.rs b/src/librustc_errors/lib.rs
index 3d50c95d3f4..7df467ab0d4 100644
--- a/src/librustc_errors/lib.rs
+++ b/src/librustc_errors/lib.rs
@@ -83,6 +83,12 @@ pub struct CodeSuggestion {
     pub substitutions: Vec<Substitution>,
     pub msg: String,
     pub show_code_when_inline: bool,
+    /// Whether or not the suggestion is approximate
+    ///
+    /// Sometimes we may show suggestions with placeholders,
+    /// which are useful for users but not useful for
+    /// tools like rustfix
+    pub approximate: bool,
 }
 
 #[derive(Clone, Debug, PartialEq, Hash, RustcEncodable, RustcDecodable)]