David Wood
d433c9a446
lint: port box pointers diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:22 +01:00
David Wood
588977b350
lint: port while true diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:22 +01:00
David Wood
4f7b10f484
lint: port unused allocation diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:22 +01:00
David Wood
e24833869f
lint: port unused import braces diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:22 +01:00
David Wood
fc4f8d9bc2
lint: port unused delimiter diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:22 +01:00
David Wood
2829f519a0
lint: port path statement diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:22 +01:00
David Wood
1999a4c421
lint: port unused diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
0602729c71
lint: port atomic ordering diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
14c3016583
lint: port variant size difference diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
e5f2e0e16c
lint: port improper ctypes diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
7a9bef4d83
lint: port overflowing literals diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
7ef610c003
lint: port drop trait/glue diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
8e836566f0
lint: port redundant semicolons diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
37588d6d4e
lint: port pass-by-value diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
855f23773b
lint: port no-op method call diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
096a69dd19
lint: port non-standard style diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
7ee4aa7003
lint: port non-fmt-panic diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
48e4bf115f
lint: port non-ascii-idents diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
c29e05e745
lint: port CString
ptr diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
4f35c7993b
lint: port translation migration diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
674ac60d5a
lint: port non-existant doc keyword diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
1c3a3e0711
lint: port impl LintPass
by hand diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
0996a7ab5c
lint: port ty diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
8139542598
lint: port query instability diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
e88916cc92
lint: port default hash types diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
fd57269e8c
lint: port hidden unicode codepoints diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
a0624eb6c9
lint: port expectation diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
2a69640eb2
lint: port enum intrinsics diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:21 +01:00
David Wood
0f4c4c5e18
lint: port array-into-iter diagnostics
...
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:59:19 +01:00
David Wood
7d2eba6311
middle: translation in LintDiagnosticBuilder
...
Accept `DiagnosticMessage` in `LintDiagnosticBuilder::build` so that
lints can be built with translatable diagnostic messages.
Signed-off-by: David Wood <david.wood@huawei.com>
2022-06-30 08:58:41 +01:00
Oli Scherer
7839cb963f
Change enum->int casts to not go through MIR casts.
...
Instead we generate a discriminant rvalue and cast the result of that.
2022-06-30 07:47:07 +00:00
bors
a9eb9c52f3
Auto merge of #98649 - RalfJung:guardians-of-mir, r=oli-obk
...
move MIR syntax into a dedicated file and ping some people whenever it changes
Adding or changing MIR operations/statements/whatever should be under significant scrutiny wrt their wider impact, specified semantics, and so on. So let's start by putting all that into a dedicated file and pinging some people whenever that file changes.
This PR only moves definitions around, and then fiddles with imports until it all works again.
2022-06-30 03:50:35 +00:00
Tshepang Mbambo
398e7784dd
use "or pattern"
2022-06-30 03:05:51 +02:00
bors
5d3c6d6c83
Auto merge of #98691 - matthiaskrgr:rollup-ymsa64p, r=matthiaskrgr
...
Rollup of 6 pull requests
Successful merges:
- #96727 (Make TAIT behave exactly like RPIT)
- #98681 (rustdoc-json: Make default value of blanket impl assoc types work)
- #98682 (add tests for ICE 94432)
- #98683 (add test for ice 68875)
- #98685 (Replace `sort_modules_alphabetically` boolean with enum)
- #98687 (add test for 47814)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
2022-06-30 01:02:24 +00:00
Vincenzo Palazzo
86c1a734f5
ui test: add test of blanklet implementation
...
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
2022-06-30 01:13:24 +01:00
Vincenzo Palazzo
81abfe3913
add blanket impl suggestion to the local traits
...
Signed-off-by: Vincenzo Palazzo <vincenzopalazzodev@gmail.com>
2022-06-30 01:13:22 +01:00
Tomasz Miąsko
b88479738e
Clarify MIR semantics of checked binary operations
2022-06-30 00:00:00 +00:00
Ralf Jung
6c990f48af
fix doc issues
2022-06-29 19:18:30 -04:00
Matthias Krüger
48170d5a1c
Rollup merge of #96727 - oli-obk:no_expect, r=lcnr
...
Make TAIT behave exactly like RPIT
fixes https://github.com/rust-lang/rust/issues/96552
This makes type-alias-impl-trait behave like return-position-impl-trait. Unfortunately it also causes some cases to stop compiling due to "needing type annotations" and makes panicking cause fallback for the hidden type to `()`.
All of these are addressable, but we should probably address them for RPIT and TAIT together
r? ``@lcnr``
2022-06-30 00:23:50 +02:00
bors
bf45371f26
Auto merge of #98520 - RalfJung:invalid, r=compiler-errors
...
interpret: adjust error from constructing an invalid value
2022-06-29 22:21:43 +00:00
Ralf Jung
f60ec83779
interpret: add From<&MplaceTy> for PlaceTy
2022-06-29 17:13:13 -04:00
Ralf Jung
ab01a73151
move MIR syntax into a dedicated file and ping some people whenever it changes
2022-06-29 16:03:24 -04:00
Matthias Krüger
d34c4ca9be
Rollup merge of #98668 - TaKO8Ki:avoid-many-&str-to-string-conversions, r=Dylan-DPC
...
Avoid some `&str` to `String` conversions with `MultiSpan::push_span_label`
This patch removes some`&str` to `String` conversions with `MultiSpan::push_span_label`.
2022-06-29 20:35:07 +02:00
Matthias Krüger
d708bc45c4
Rollup merge of #98665 - ChrisDenton:deprecated-suggestion, r=compiler-errors
...
Use verbose help for deprecation suggestion
Fixes #98631
r? `@compiler-errors`
2022-06-29 20:35:06 +02:00
Matthias Krüger
921e311da2
Rollup merge of #98643 - voidc:valtree-ref-pretty, r=lcnr
...
Improve pretty printing of valtrees for references
This implements the changes outlined in https://github.com/rust-lang/rust/issues/66451#issuecomment-1168859638 .
r? `@lcnr`
Fixes #66451
2022-06-29 20:35:01 +02:00
Matthias Krüger
05c0b2e397
Rollup merge of #98642 - yanchen4791:issue-98260-fix, r=spastorino
...
Fix #98260
Fixes https://github.com/rust-lang/rust/issues/98260
2022-06-29 20:35:00 +02:00
Matthias Krüger
7dc0489965
fix ICE with -Wrust-2021-incompatible-closure-captures
...
Fixes #93117
Fixes #96258
2022-06-29 20:32:32 +02:00
Ralf Jung
238501c137
interpret: adjust error from constructing an invalid value
2022-06-29 11:26:24 -04:00
Dylan DPC
68228be560
Rollup merge of #98625 - RalfJung:retag, r=oli-obk
...
emit Retag for compound types with reference fields
I want to add an option to Miri to do retagging inside reference fields. But that means we first have to even emit `Retag` for types that *contain* references (rather than being of reference types). :)
Stacked Borrows originally did that, but we stopped doing it when hitting bunch of issues in the standard library. However I have since realized that we actually do emit `noalias` for newtypes references, which means for soundness we should recurse into fields. Also it'd probably be bad news if newtypes lose out on optimizations (and they don't, for anything else). I want to add an option for that to Miri so that we can start experimenting with those semantics.
r? ``@oli-obk``
2022-06-29 17:59:37 +05:30
Dylan DPC
fcbb2e8009
Rollup merge of #98607 - compiler-errors:tuple-wrap-suggestion, r=oli-obk
...
Clean up arg mismatch diagnostic, generalize tuple wrap suggestion
This is based on top of #97542 , so just look at the last commit which contains the relevant changes.
1. Remove `final_arg_types` which was one of the last places we were using raw (`usize`) indices instead of typed indices in the arg mismatch suggestion code.
2. Improve the tuple wrap suggestion, now we suggest things like `call(a, b, c, d)` -> `call(a, (b, c), d)` 😺
3. Folded in fix #98645
2022-06-29 17:59:36 +05:30