Alex Burka
7a5a1f9857
use -Z flag instead of env var
2017-11-19 22:30:14 +00:00
Oliver Schneider
6ae440e048
Make the difference between lint codes and error codes explicit
2017-11-02 10:19:41 +01:00
Sergio Benitez
8be132e9d7
Initial diagnostic API for proc-macros.
...
This commit introduces the ability to create and emit `Diagnostic`
structures from proc-macros, allowing for proc-macro authors to emit
warning, error, note, and help messages just like the compiler does.
2017-08-28 02:58:22 -07:00
Alex Crichton
64b0b2bfeb
rustc_errors: Add the ability to delay as bugs
...
This adds a function to `DiagnosticBuilder` to delay the entire diagnostic as a
bug to be emitted at a later time. This'll end up getting used in the compiler
in the subsequent commits...
2017-08-25 16:08:35 -07:00
Alex Crichton
8e95b3a939
rustc: Capture diagnostics from all queries
...
This commit alters the `rustc::ty::maps` implementation to ensure that all
output diagnostics from the compiler are tracked for the duration of each query.
These are then intended to be replayed back the first time a cached value is
loaded, and otherwise the cache should operate the same as it does today.
Closes #42513
2017-08-24 15:18:06 -07:00
Vadim Petrochenkov
de4dbe5789
rustc: Remove some dead code
2017-08-19 13:27:16 +03:00
Corey Farwell
a4387d54dc
Rollup merge of #43891 - Fourchaux:master, r=steveklabnik
...
Fix typos & us spellings
Fixing some typos and non en-US spellings.
(Update of PR https://github.com/rust-lang/rust/pull/42812 )
2017-08-17 10:44:07 -04:00
Zack M. Davis
1b6c9605e4
use field init shorthand EVERYWHERE
...
Like #43008 (f668999 ), but _much more aggressive_.
2017-08-15 15:29:17 -07:00
Fourchaux
c7104be1a3
Fix typos & us spellings
2017-08-15 21:56:30 +02:00
Ariel Ben-Yehuda
1057a728f5
fix -Z treat-err-as-bug
2017-07-31 18:09:02 +03:00
Esteban Küber
faf90351b7
Add flag to hide code on inline suggestions
...
Now there's a way to add suggestions that hide the suggested code when
presented inline, to avoid weird wording when short code snippets are
added at the end.
2017-07-17 09:27:51 -07:00
Andre Bogus
fc513861b1
fix some clippy warnings in librustc_errors
2017-05-19 01:20:48 +02:00
Mark Simulacrum
c17811cce3
Rollup merge of #41942 - tommyip:master, r=Mark-Simulacrum
...
Fix unexpected panic with the -Z treat-err-as-bug option
This fix an issue where the compiler panics even if there is no error when passed with the `-Z treat-err-as-bug` option.
Fixes #35886 .
r? @Mark-Simulacrum
2017-05-12 18:57:37 -06:00
Tommy Ip
7a03b4c75a
Fix unexpected panic with the -Z treat-err-as-bug option
...
This fix an issue where the compiler panics even if there is no
error when passed with the `-Z treat-err-as-bug` option.
Fixes #35886 .
2017-05-12 12:54:20 +01:00
Oliver Schneider
67d762d896
Refactor suggestion diagnostic API to allow for multiple suggestions
2017-05-10 13:20:26 +02:00
Oliver Schneider
dd87eabd83
Remove need for &format!(...) or &&"" dances in span_label calls
2017-05-08 12:56:15 +02:00
Oliver Schneider
0e920fde4f
Minimize single span suggestions into a note
2017-04-25 11:04:34 +02:00
Esteban Küber
2389830dea
Highlight and simplify mismatched types
...
Shorten mismatched types errors by replacing subtypes that are not
different with `_`, and highlighting only the subtypes that are
different.
Given a file
```rust
struct X<T1, T2> {
x: T1,
y: T2,
}
fn foo() -> X<X<String, String>, String> {
X { x: X {x: "".to_string(), y: 2}, y: "".to_string()}
}
fn bar() -> Option<String> {
"".to_string()
}
```
provide the following output
```rust
error[E0308]: mismatched types
--> file.rs:6:5
|
6 | X { x: X {x: "".to_string(), y: 2}, y: "".to_string()}
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `std::string::String`, found {integer}
|
= note: expected type `X<X<_, std::string::String>, _>`
^^^^^^^^^^^^^^^^^^^ // < highlighted
found type `X<X<_, {integer}>, _>`
^^^^^^^^^ // < highlighted
error[E0308]: mismatched types
--> file.rs:6:5
|
10 | "".to_string()
| ^^^^^^^^^^^^^^ expected struct `std::option::Option`, found `std::string::String`
|
= note: expected type `Option<std::string::String>`
^^^^^^^ ^ // < highlighted
found type `std::string::String`
```
2017-04-11 15:45:00 -07:00
Niko Matsakis
ad46ad6a77
pacify the mercilous tidy
2016-11-01 14:08:56 -04:00
Niko Matsakis
ddabd509a8
compare-method lint
2016-11-01 14:08:56 -04:00
Niko Matsakis
888a92cef3
separate Diagnostic from DiagnosticBuilder
2016-11-01 14:07:45 -04:00