Esteban Küber
6c0755a7dc
Point at item definition in foreign crates
2020-08-10 12:04:10 -07:00
Esteban Küber
eef284be59
Tweak ordering of suggestions
...
Modify logic to make it easier to follow and recover labels that would
otherwise be lost.
2020-08-10 12:04:10 -07:00
Esteban Küber
04298204ed
Suggest struct pat on incorrect unit or tuple pat
...
When encountering a unit or tuple pattern for a struct-like item, suggest
using the correct pattern.
Use `insert_field_names_local` when evaluating variants and store field
names even when the list is empty in order to produce accurate
structured suggestions.
2020-07-14 10:41:44 -07:00
Dan Aloni
404df1cbbf
Add re-exports to use suggestions
...
In the following example, an inaccessible path is suggested via
`use foo::bar::X;` whereas an accessible public exported path can
be suggested instead.
```
mod foo {
mod bar {
pub struct X;
}
pub use self::bar::X;
}
fn main() { X; }
```
This fixes the issue.
2020-06-23 13:37:50 +03:00
Andy Russell
9f88d75710
reword "possible candidate" import suggestion
2020-05-07 00:33:25 -04:00
Esteban Küber
d605a9d969
Small tweaks to required bound span
2020-04-08 14:40:51 -07:00
Esteban Küber
39c96a0f53
Point at the span for the definition of crate foreign ADTs
2020-01-10 11:40:29 -08:00
Esteban Küber
b26ddb8af3
Point at local similarly named element and tweak references to variants
...
Point at the span for the definition of ADTs internal to the current
crate.
Look at the leading char of the ident to determine whether we're
expecting a likely fn or any of a fn, a tuple struct or a tuple variant.
Turn fn `add_typo_suggestion` into a `Resolver` method.
2019-10-27 11:50:43 -07:00
Esteban Küber
0baf61bfdb
Increase spacing for suggestions in diagnostics
...
Make the spacing between the code snippet and verbose structured
suggestions consistent with note and help messages.
2019-10-24 12:26:01 -07:00
Mazdak Farrokhzad
0a2ddcc346
Rollup merge of #64691 - estebank:unexpected-variant, r=Centril
...
Point at definition when misusing ADT
When given `struct Foo(usize)` and using it as `Foo {}` or `Foo`, point at `Foo`'s definition in the error.
2019-09-29 20:34:12 +02:00
Esteban Küber
b370c111fd
On obligation errors point at the unfulfilled binding when possible
2019-09-22 11:33:12 -07:00
Esteban Küber
2ae9016553
Point at definition when misusing ADT
...
When given `struct Foo(usize)` and using it as `Foo {}` or `Foo`, point at
`Foo`'s definition in the error.
2019-09-22 11:27:55 -07:00
Esteban Küber
02e3fb89a7
When possible point at argument causing item obligation failure
2019-09-19 12:10:23 -07:00
Esteban Küber
444bc3ca66
Use span label instead of note for cause in E0631
2019-08-31 00:14:23 -07:00
Andy Russell
b6f148c8bd
hide --explain hint if error has no extended info
2019-04-18 13:29:28 -04:00
Eduard-Mihai Burtescu
8619edede1
rustc: slice substs in ty::print instead of passing the full ones.
2019-03-15 13:25:10 +02:00
Vadim Petrochenkov
fa72a81bea
Update tests
2019-03-11 23:10:26 +03:00
Andy Russell
404ad50d14
clarify resolve typo suggestion
...
Include the kind of the binding that we're suggesting, and use a
structured suggestion.
2019-01-09 14:11:00 -05:00
Mark Rousskov
2a663555dd
Remove licenses
2018-12-25 21:08:33 -07:00
Alexander Regueiro
ee89c088b0
Various minor/cosmetic improvements to code
2018-12-07 23:53:34 +00:00
Oliver Scherer
5a48f20bd9
Update tests
2018-10-26 17:27:22 +02:00
David Wood
3fc7ab2373
Merged migrated compile-fail tests and ui tests. Fixes #46841 .
2018-08-14 11:12:09 +02:00