From 1550787b13d3e863f06da7c0c9e17ec1dee341df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Esteban=20K=C3=BCber?= Date: Fri, 11 Jan 2019 23:37:49 -0800 Subject: [PATCH] Add label for invalid literal suffix --- src/libsyntax/parse/mod.rs | 2 ++ src/test/ui/old-suffixes-are-really-forbidden.stderr | 4 ++-- src/test/ui/parser/bad-lit-suffixes.stderr | 8 ++++---- src/test/ui/parser/no-binary-float-literal.stderr | 2 +- src/test/ui/parser/no-hex-float-literal.stderr | 2 +- 5 files changed, 10 insertions(+), 8 deletions(-) diff --git a/src/libsyntax/parse/mod.rs b/src/libsyntax/parse/mod.rs index 48184f6d918b2..ea205530ca5cc 100644 --- a/src/libsyntax/parse/mod.rs +++ b/src/libsyntax/parse/mod.rs @@ -520,6 +520,7 @@ fn filtered_float_lit(data: Symbol, suffix: Option, diag: Option<(Span, } else { let msg = format!("invalid suffix `{}` for float literal", suf); diag.struct_span_err(span, &msg) + .span_label(span, format!("invalid suffix `{}`", suf)) .help("valid suffixes are `f32` and `f64`") .emit(); } @@ -716,6 +717,7 @@ fn integer_lit(s: &str, suffix: Option, diag: Option<(Span, &Handler)>) } else { let msg = format!("invalid suffix `{}` for numeric literal", suf); diag.struct_span_err(span, &msg) + .span_label(span, format!("invalid suffix `{}`", suf)) .help("the suffix must be one of the integral types \ (`u32`, `isize`, etc)") .emit(); diff --git a/src/test/ui/old-suffixes-are-really-forbidden.stderr b/src/test/ui/old-suffixes-are-really-forbidden.stderr index 557e7ef6794cd..c54b72a3585d1 100644 --- a/src/test/ui/old-suffixes-are-really-forbidden.stderr +++ b/src/test/ui/old-suffixes-are-really-forbidden.stderr @@ -2,7 +2,7 @@ error: invalid suffix `is` for numeric literal --> $DIR/old-suffixes-are-really-forbidden.rs:2:13 | LL | let a = 1_is; //~ ERROR invalid suffix - | ^^^^ + | ^^^^ invalid suffix `is` | = help: the suffix must be one of the integral types (`u32`, `isize`, etc) @@ -10,7 +10,7 @@ error: invalid suffix `us` for numeric literal --> $DIR/old-suffixes-are-really-forbidden.rs:3:13 | LL | let b = 2_us; //~ ERROR invalid suffix - | ^^^^ + | ^^^^ invalid suffix `us` | = help: the suffix must be one of the integral types (`u32`, `isize`, etc) diff --git a/src/test/ui/parser/bad-lit-suffixes.stderr b/src/test/ui/parser/bad-lit-suffixes.stderr index 0dc291ebda01a..608c5fda2482a 100644 --- a/src/test/ui/parser/bad-lit-suffixes.stderr +++ b/src/test/ui/parser/bad-lit-suffixes.stderr @@ -82,7 +82,7 @@ error: invalid suffix `suffix` for numeric literal --> $DIR/bad-lit-suffixes.rs:25:5 | LL | 1234suffix; //~ ERROR invalid suffix `suffix` for numeric literal - | ^^^^^^^^^^ + | ^^^^^^^^^^ invalid suffix `suffix` | = help: the suffix must be one of the integral types (`u32`, `isize`, etc) @@ -90,7 +90,7 @@ error: invalid suffix `suffix` for numeric literal --> $DIR/bad-lit-suffixes.rs:26:5 | LL | 0b101suffix; //~ ERROR invalid suffix `suffix` for numeric literal - | ^^^^^^^^^^^ + | ^^^^^^^^^^^ invalid suffix `suffix` | = help: the suffix must be one of the integral types (`u32`, `isize`, etc) @@ -98,7 +98,7 @@ error: invalid suffix `suffix` for float literal --> $DIR/bad-lit-suffixes.rs:27:5 | LL | 1.0suffix; //~ ERROR invalid suffix `suffix` for float literal - | ^^^^^^^^^ + | ^^^^^^^^^ invalid suffix `suffix` | = help: valid suffixes are `f32` and `f64` @@ -106,7 +106,7 @@ error: invalid suffix `suffix` for float literal --> $DIR/bad-lit-suffixes.rs:28:5 | LL | 1.0e10suffix; //~ ERROR invalid suffix `suffix` for float literal - | ^^^^^^^^^^^^ + | ^^^^^^^^^^^^ invalid suffix `suffix` | = help: valid suffixes are `f32` and `f64` diff --git a/src/test/ui/parser/no-binary-float-literal.stderr b/src/test/ui/parser/no-binary-float-literal.stderr index 90f4171f88da5..21f415bcfb000 100644 --- a/src/test/ui/parser/no-binary-float-literal.stderr +++ b/src/test/ui/parser/no-binary-float-literal.stderr @@ -14,7 +14,7 @@ error: invalid suffix `p4f64` for numeric literal --> $DIR/no-binary-float-literal.rs:6:5 | LL | 0b101p4f64; - | ^^^^^^^^^^ + | ^^^^^^^^^^ invalid suffix `p4f64` | = help: the suffix must be one of the integral types (`u32`, `isize`, etc) diff --git a/src/test/ui/parser/no-hex-float-literal.stderr b/src/test/ui/parser/no-hex-float-literal.stderr index 11e911f5ecb60..258ab06d5ee2f 100644 --- a/src/test/ui/parser/no-hex-float-literal.stderr +++ b/src/test/ui/parser/no-hex-float-literal.stderr @@ -8,7 +8,7 @@ error: invalid suffix `f` for float literal --> $DIR/no-hex-float-literal.rs:6:18 | LL | 0xDEAD.BEEFp-2f; - | ^^ + | ^^ invalid suffix `f` | = help: valid suffixes are `f32` and `f64`