about summary refs log tree commit diff
path: root/src/libsyntax_pos
diff options
context:
space:
mode:
authorVadim Petrochenkov <vadim.petrochenkov@gmail.com>2019-07-07 13:02:05 +0300
committerVadim Petrochenkov <vadim.petrochenkov@gmail.com>2019-07-11 00:12:57 +0300
commitdcd30a4b175364ca1ee1efdcae701a23c5ff7d0b (patch)
treebda92f926da4cad9671855d921e773b6aef7225e /src/libsyntax_pos
parent99c7432896bbfdab1f7f70f8d763cab5f3efe64a (diff)
downloadrust-dcd30a4b175364ca1ee1efdcae701a23c5ff7d0b.tar.gz
rust-dcd30a4b175364ca1ee1efdcae701a23c5ff7d0b.zip
hygiene: Fix wording of desugaring descriptions
Use variant names rather than descriptions for identifying desugarings in `#[rustc_on_unimplemented]`.
Both are highly unstable, but variant name is at least a single identifier.
Diffstat (limited to 'src/libsyntax_pos')
-rw-r--r--src/libsyntax_pos/hygiene.rs17
-rw-r--r--src/libsyntax_pos/lib.rs2
2 files changed, 10 insertions, 9 deletions
diff --git a/src/libsyntax_pos/hygiene.rs b/src/libsyntax_pos/hygiene.rs
index f060bf356f6..b72da042d04 100644
--- a/src/libsyntax_pos/hygiene.rs
+++ b/src/libsyntax_pos/hygiene.rs
@@ -734,15 +734,16 @@ pub enum DesugaringKind {
 }
 
 impl DesugaringKind {
-    pub fn descr(self) -> &'static str {
+    /// The description wording should combine well with "desugaring of {}".
+    fn descr(self) -> &'static str {
         match self {
-            DesugaringKind::CondTemporary => "if and while condition",
-            DesugaringKind::Async => "async",
-            DesugaringKind::Await => "await",
-            DesugaringKind::QuestionMark => "?",
-            DesugaringKind::TryBlock => "try block",
-            DesugaringKind::ExistentialType => "existential type",
-            DesugaringKind::ForLoop => "for loop",
+            DesugaringKind::CondTemporary => "`if` or `while` condition",
+            DesugaringKind::Async => "`async` block or function",
+            DesugaringKind::Await => "`await` expression",
+            DesugaringKind::QuestionMark => "operator `?`",
+            DesugaringKind::TryBlock => "`try` block",
+            DesugaringKind::ExistentialType => "`existential type`",
+            DesugaringKind::ForLoop => "`for` loop",
         }
     }
 }
diff --git a/src/libsyntax_pos/lib.rs b/src/libsyntax_pos/lib.rs
index 4fd27ce4f96..9258b71518f 100644
--- a/src/libsyntax_pos/lib.rs
+++ b/src/libsyntax_pos/lib.rs
@@ -442,7 +442,7 @@ impl Span {
             // Don't print recursive invocations.
             if !info.call_site.source_equal(&prev_span) {
                 let (pre, post) = match info.kind {
-                    ExpnKind::Desugaring(..) => ("desugaring of `", "`"),
+                    ExpnKind::Desugaring(..) => ("desugaring of ", ""),
                     ExpnKind::Macro(macro_kind, _) => match macro_kind {
                         MacroKind::Bang => ("", "!"),
                         MacroKind::Attr => ("#[", "]"),