about summary refs log tree commit diff
path: root/src/libsyntax/parse
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2015-04-14 06:54:20 +0000
committerbors <bors@rust-lang.org>2015-04-14 06:54:20 +0000
commita4eb5a66a5b33b209a1263830d89d83381a42ccb (patch)
tree20bc0c21fec81ac0124428053c42253a8530db99 /src/libsyntax/parse
parent5dc8060e3fbf49f225885217dc9f966ce95ff72d (diff)
parent4abade50d7096ee5585255ca08d69b1ccd73d09f (diff)
downloadrust-a4eb5a66a5b33b209a1263830d89d83381a42ccb.tar.gz
rust-a4eb5a66a5b33b209a1263830d89d83381a42ccb.zip
Auto merge of #24295 - contradictioned:master, r=alexcrichton
As i proposed in #24262 (and found acceptance in the IRC channel), added a compiler warning for wrong escaping of curly braces.
Diffstat (limited to 'src/libsyntax/parse')
-rw-r--r--src/libsyntax/parse/lexer/mod.rs8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/libsyntax/parse/lexer/mod.rs b/src/libsyntax/parse/lexer/mod.rs
index 22b7d5c9f1d..f891318659a 100644
--- a/src/libsyntax/parse/lexer/mod.rs
+++ b/src/libsyntax/parse/lexer/mod.rs
@@ -843,13 +843,19 @@ impl<'a> StringReader<'a> {
                                     if ascii_only { "unknown byte escape" }
                                     else { "unknown character escape" },
                                     c);
+                                let sp = codemap::mk_sp(escaped_pos, last_pos);
                                 if e == '\r' {
-                                    let sp = codemap::mk_sp(escaped_pos, last_pos);
                                     self.span_diagnostic.span_help(
                                         sp,
                                         "this is an isolated carriage return; consider checking \
                                          your editor and version control settings")
                                 }
+                                if (e == '{' || e == '}') && !ascii_only {
+                                    self.span_diagnostic.span_help(
+                                        sp,
+                                        "if used in a formatting string, \
+                                        curly braces are escaped with `{{` and `}}`")
+                                }
                                 false
                             }
                         }