about summary refs log tree commit diff
path: root/src/libsyntax_pos
diff options
context:
space:
mode:
authorEsteban Küber <esteban@kuber.com.ar>2018-05-10 09:09:58 -0700
committerEsteban Küber <esteban@kuber.com.ar>2018-05-10 09:09:58 -0700
commit3f6b3bbace466f4be1311192f335c4c7792a83d2 (patch)
treeafb5e7725fb3e258c87d9622fbfd4998407ecb0d /src/libsyntax_pos
parente5f80f2a4f016bf724a1cfb580619d71c8fd39ec (diff)
downloadrust-3f6b3bbace466f4be1311192f335c4c7792a83d2.tar.gz
rust-3f6b3bbace466f4be1311192f335c4c7792a83d2.zip
Improve format string errors
 - Point at format string position inside the formatting string
 - Explain that argument names can't start with an underscore
Diffstat (limited to 'src/libsyntax_pos')
-rw-r--r--src/libsyntax_pos/lib.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/libsyntax_pos/lib.rs b/src/libsyntax_pos/lib.rs
index 8b4a3ea26a1..e1693ff4db6 100644
--- a/src/libsyntax_pos/lib.rs
+++ b/src/libsyntax_pos/lib.rs
@@ -427,6 +427,13 @@ impl Span {
         )
     }
 
+    pub fn from_inner_byte_pos(self, start: usize, end: usize) -> Span {
+        let span = self.data();
+        Span::new(span.lo + BytePos::from_usize(start),
+                  span.lo + BytePos::from_usize(end),
+                  span.ctxt)
+    }
+
     #[inline]
     pub fn apply_mark(self, mark: Mark) -> Span {
         let span = self.data();