Vadim Petrochenkov
7e66e9d6b0
More precise spans for HIR paths
2021-03-15 22:13:45 +03:00
Camelid
253a970c3d
Miscellaneous small diagnostics cleanup
2021-02-03 22:09:37 -08:00
Yuki Okushi
7008911080
FIx ICE on wf check for foreign fns
2020-12-31 11:25:53 +09:00
Esteban Küber
88f5e110db
review comments
2020-10-20 09:26:15 -07:00
Esteban Küber
ae0e3d0511
Tweak "object unsafe" errors
...
Fix #77598 .
2020-10-20 09:26:14 -07:00
Dan Aloni
07e7823c01
pretty: trim paths of unique symbols
...
If a symbol name can only be imported from one place for a type, and
as long as it was not glob-imported anywhere in the current crate, we
can trim its printed path and print only the name.
This has wide implications on error messages with types, for example,
shortening `std::vec::Vec` to just `Vec`, as long as there is no other
`Vec` importable anywhere.
This adds a new '-Z trim-diagnostic-paths=false' option to control this
feature.
On the good path, with no diagnosis printed, we should try to avoid
issuing this query, so we need to prevent trimmed_def_paths query on
several cases.
This change also relies on a previous commit that differentiates
between `Debug` and `Display` on various rustc types, where the latter
is trimmed and presented to the user and the former is not.
2020-09-02 22:26:37 +03:00
mark
2c31b45ae8
mv std libs to library/
2020-07-27 19:51:13 -05:00
Aaron Hill
116ad51c2c
Use the proper span when WF-checking an impl self type
2020-07-25 02:11:55 -04:00
David Wood
ceac273e60
wf: check foreign fn decls for well-formedness
...
This commit extends current well-formedness checking to apply to foreign
function declarations, re-using the existing machinery for regular
functions. In doing this, later parts of the compiler (such as the
`improper_ctypes` lint) can rely on being operations not failing as a
result of invalid code which would normally be caught earlier.
Signed-off-by: David Wood <david@davidtw.co>
2020-07-20 10:28:12 +01:00
Esteban Küber
b7db6bb5af
Remove Sized on_unimplemented note
2020-07-14 10:50:24 -07:00
Esteban Küber
28e6f1f5b9
Suggest boxing or borrowing unsized fields
2020-07-14 10:50:24 -07:00
Esteban Küber
aa84b0fa37
Provide help when T: ?Sized can't be suggested
2020-06-16 17:24:16 -07:00
Esteban Küber
8f7ee34379
Tweak type parameter errors to reduce verbosity
2020-05-30 10:22:26 -07:00
Esteban Küber
45738e8cd1
Increase verbosity of bound restriction suggestions
...
- Make the bound restriction suggestion `span_suggestion_verbose`.
- Fix whitespace typo.
2020-05-12 11:19:07 -07:00
Esteban Küber
d605a9d969
Small tweaks to required bound span
2020-04-08 14:40:51 -07:00
Esteban Küber
bd7ea5441e
Use PredicateObligations instead of Predicates
...
Keep more information about trait binding failures.
2020-04-08 14:40:45 -07:00
Esteban Küber
2c71894657
Tweak suggest_constraining_type_param
...
Some of the bound restriction structured suggestions were incorrect
while others had subpar output.
2020-03-29 13:13:17 -07:00
Matthias Krüger
136ad015b6
fix various typos
2020-03-06 15:19:31 +01:00
Esteban Küber
c816430f99
Tweak binding lifetime suggestion text
...
We already have a structured suggestion, but the wording made it seem
like that wasn't the case.
Fix #65286 . r? @varkor
2020-02-19 18:04:03 -08:00
Patryk Wychowaniec
a8d34c1062
Improve reporting errors and suggestions for trait bounds
2020-02-09 10:33:47 +01:00
Esteban Küber
a52ec87a17
Use more appropriate spans on object unsafe traits and provide structured suggestions when possible
2020-02-02 11:53:10 -08:00
Esteban Küber
413bfa4b98
Wording changes to object unsafe trait errors
...
Stemming from the thread at https://twitter.com/indygreg/status/1223279056398929920
2020-02-02 11:53:10 -08:00
Esteban Küber
144e259445
Slight rewording of diagnostic message
2020-02-02 11:53:10 -08:00
Esteban Küber
6870f79e9c
Use more accurate failed predicate spans
2020-02-02 11:53:09 -08:00
Esteban Küber
4b2f1db6e4
Tweak Self: Sized restriction diagnostic output
2020-02-02 11:52:34 -08:00
Esteban Küber
1c9242f83f
Point at Sized bound
2020-02-02 11:52:34 -08:00
Esteban Küber
fca5c64abd
Point at arguments or output when fn obligations come from them, or ident when they don't
2020-02-02 11:52:33 -08:00
varkor
0c2cf07d6e
Add backticks to various diagnostics
2020-01-05 00:17:46 +00:00
bors
53712f8637
Auto merge of #66389 - estebank:type-err-labels, r=petrochenkov
...
Specific labels when referring to "expected" and "found" types
2019-11-21 17:53:19 +00:00
Esteban Küber
83ffda5216
Specific labels when referring to "expected" and "found" types
2019-11-18 11:02:22 -08:00
Mark Mansi
cba0761e5f
update tests
2019-10-27 09:39:14 -05:00
bors
4a8c5b20c7
Auto merge of #57545 - bovinebuddha:object_safe_for_dispatch, r=nikomatsakis
...
Object safe for dispatch
cc #43561
2019-10-23 13:34:27 +00:00
Mathias Blikstad
ef5acdeceb
RFC 2027: "first draft" of implementation
...
These are a squashed series of commits.
2019-10-22 15:24:33 -04:00
Esteban Küber
ab7d8f0f5a
Deduplicate some code and apply review comments
2019-10-15 13:55:44 -07:00
Esteban Küber
99ab45b91d
Handle Self restriction needed
2019-10-15 13:55:43 -07:00
Esteban Küber
5b7ffd9333
Handle more cases
2019-10-15 13:55:43 -07:00
Esteban Küber
190589f8a7
Use structured suggestion for restricting bounds
...
When a trait bound is not met and restricting a type parameter would
make the restriction hold, use a structured suggestion pointing at an
appropriate place (type param in param list or `where` clause).
Account for opaque parameters where instead of suggesting extending
the `where` clause, we suggest appending the new restriction:
`fn foo(impl Trait + UnmetTrait)`.
2019-10-15 13:55:43 -07:00
Mazdak Farrokhzad
a73e0731f4
Rollup merge of #65395 - JohnTitor:add-tests, r=Centril
...
Add some tests for fixed ICEs
Fixes #44153 (from 1.23.0)
Fixes #47486 (from 1.36.0)
Fixes #48010 (from 1.38.0)
Fixes #48027 (from nightly)
Fixes #48638 (from nightly)
2019-10-14 07:37:01 +02:00
Yuki Okushi
f6e01e8d40
Add test for issue-48638
2019-10-14 11:56:30 +09:00
Yuki Okushi
2ae5e3421d
Print lifetimes with backticks
2019-10-11 16:08:53 +09:00
Guillaume Gomez
96efaad342
update ui tests
2019-10-07 17:12:54 +02:00
Guillaume Gomez
cf6a1feda6
update ui tests
2019-09-12 13:25:42 +02:00
Esteban Küber
efe85943b3
account for DUMMY_SP and correct wording
2019-09-02 22:11:29 -07:00
Esteban Küber
c1e5e5c567
On object safety violation, point at source when possible
2019-09-02 20:22:22 -07:00
Esteban Küber
444bc3ca66
Use span label instead of note for cause in E0631
2019-08-31 00:14:23 -07:00
memoryruins
eb4580a570
Update ui test suite to use dyn
2019-05-29 00:57:31 -04:00
Matthew Jasper
ff71b80a85
Change compare mode to use -Zborrowck=mir
2019-05-12 18:46:43 +01:00
varkor
7f0f0e31ec
Remove double trailing newlines
2019-04-22 16:57:01 +01:00
Matthew Jasper
8eef102270
update tests for migrate mode by default
2019-04-22 08:40:08 +01:00
Andy Russell
b6f148c8bd
hide --explain hint if error has no extended info
2019-04-18 13:29:28 -04:00