about summary refs log tree commit diff
path: root/tests
AgeCommit message (Collapse)AuthorLines
2023-02-06Handle discriminants in dataflow-const-prop.Camille GILLOT-10/+77
2023-02-06Auto merge of #107727 - Dylan-DPC:rollup-b1yexcl, r=Dylan-DPCbors-133/+550
Rollup of 5 pull requests Successful merges: - #107553 (Suggest std::ptr::null if literal 0 is given to a raw pointer function argument) - #107580 (Recover from lifetimes with default lifetimes in generic args) - #107669 (rustdoc: combine duplicate rules in ayu CSS) - #107685 (Suggest adding a return type for async functions) - #107687 (Adapt SROA MIR opt for aggregated MIR) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2023-02-06Rollup merge of #107687 - cjgillot:sroa-2, r=oli-obkDylan DPC-133/+334
Adapt SROA MIR opt for aggregated MIR The pass was broken by https://github.com/rust-lang/rust/pull/107267. This PR extends it to replace: ``` x = Struct { 0: a, 1: b } y = move? x ``` by assignment between locals ``` x_0 = a x_1 = b y_0 = move? x_0 y_1 = move? x_1 ``` The improved pass runs to fixpoint, so we can flatten nested field accesses.
2023-02-06Rollup merge of #107685 - jieyouxu:issue-90027, r=compiler-errorsDylan DPC-0/+57
Suggest adding a return type for async functions Fixes #90027.
2023-02-06Rollup merge of #107580 - ↵Dylan DPC-0/+14
lenko-d:default_value_for_a_lifetime_generic_parameter_produces_confusing_diagnostic, r=compiler-errors Recover from lifetimes with default lifetimes in generic args Fixes [#107492](https://github.com/rust-lang/rust/issues/107492)
2023-02-06Rollup merge of #107553 - edward-shen:edward-shen/suggest-null-ptr, ↵Dylan DPC-0/+145
r=WaffleLapkin Suggest std::ptr::null if literal 0 is given to a raw pointer function argument Implementation feels a little sus (we're parsing the span for a `0`) but it seems to fall in line the string-expected-found-char condition right above this check, so I think it's fine. Feedback appreciated on help text? I think it's consistent but it does sound a little awkward maybe? Fixes #107517
2023-02-06Auto merge of #103761 - chenyukang:yukang/fix-103320-must-use, r=compiler-errorsbors-0/+94
Add explanatory message for [#must_use] in ops Fixes #103320
2023-02-06Suggest return type for async function without return type许杰友 Jieyou Xu (Joe)-0/+57
2023-02-06Auto merge of #107141 - notriddle:notriddle/max-lev-distance-2023, ↵bors-9/+24
r=GuillaumeGomez rustdoc: compute maximum Levenshtein distance based on the query Preview: https://notriddle.com/notriddle-rustdoc-demos/search-lev-distance-2023/std/index.html?search=regex The heuristic is pretty close to the name resolver, maxLevDistance = `Math.floor(queryLen / 3)`. Fixes #103357 Fixes #82131 Similar to https://github.com/rust-lang/rust/pull/103710, but following the suggestion in https://github.com/rust-lang/rust/pull/103710#issuecomment-1296360267 to use `floor` instead of `ceil`, and unblocked now that https://github.com/rust-lang/rust/pull/105796 made it so that setting the max lev distance to `0` doesn't cause substring matches to be removed.
2023-02-05Auto merge of #107526 - obeis:for-missing-iterator, r=estebank,compiler-errorsbors-0/+18
Recover form missing expression in `for` loop Close #78537 r? `@estebank`
2023-02-05Auto merge of #107663 - matthiaskrgr:107423-point-at-EOF-code, r=compiler-errorsbors-0/+39
don't point at nonexisting code beyond EOF when warning about delims Previously we would show this: ``` warning: unnecessary braces around block return value --> /tmp/bad.rs:1:8 | 1 | fn a(){{{ | ^ ^ | = note: `#[warn(unused_braces)]` on by default help: remove these braces | 1 - fn a(){{{ 1 + fn a(){{ | ``` which is now hidden in this case. We would create a span spanning between the pair of redundant {}s but there is only EOF instead of the `}` so we would previously point at nothing. This would cause the debug assertion ice to trigger. I would have loved to just only point at the second delim and say "you can remove that" but I'm not sure how to do that without refactoring the entire diagnostic which seems tricky. :( But given that this does not seem to regress any other tests we have, I think this edge-casey enough be acceptable. Fixes https://github.com/rust-lang/rust/issues/107423 r? `@compiler-errors`
2023-02-05Add ui test for missing expression in for loopObei Sideg-0/+18
2023-02-05Auto merge of #102842 - rol1510:issue-85566-fix, r=notriddlebors-10/+44
rustdoc: change trait bound formatting Fixes #85566 Before <img width="268" alt="image" src="https://user-images.githubusercontent.com/29011024/208326689-cc9b4bae-529c-473c-81e2-fc5ddb738f07.png"> Now <img width="268" alt="image" src="https://user-images.githubusercontent.com/29011024/216216918-d7923787-3e3b-486d-9735-4cecd2988dba.png">
2023-02-05Bless 32bit tests.Camille GILLOT-19/+21
2023-02-05Run SROA to fixpoint.Camille GILLOT-25/+44
2023-02-05Simplify construction of replacement map.Camille GILLOT-70/+126
2023-02-05Make SROA expand assignments.Camille GILLOT-9/+123
2023-02-05Fix SROA without deaggregation.Camille GILLOT-82/+92
2023-02-05emit `ConstEquate` in `TypeRelating<D>`Boxy-0/+70
2023-02-04Suggest null ptr if 0 is given as a raw ptr argEdward Shen-0/+145
2023-02-04Recover from default value for a lifetime in generic parameters.Lenko Donchev-0/+14
2023-02-04Rollup merge of #107646 - estebank:specific-span, r=compiler-errorsMatthias Krüger-24/+41
Provide structured suggestion for binding needing type on E0594 Partially address #45405.
2023-02-04rustdoc: trait bound formattingRoland Strasser-10/+44
rustdoc: fix item-spacer rustdoc: use proper comment style rustdoc: change formatting where clauses for traits rustdoc: remove semicolon from provided methods update provided methods formatting
2023-02-04Auto merge of #107267 - cjgillot:keep-aggregate, r=oli-obkbors-821/+528
Do not deaggregate MIR This turns out to simplify a lot of things. I haven't checked the consequences for miri yet. cc `@JakobDegen` r? `@oli-obk`
2023-02-04don't point at nonexisting code beyond EOF when warning about unused delimsMatthias Krüger-0/+39
Previously we would show this: ``` warning: unnecessary braces around block return value --> /tmp/bad.rs:1:8 | 1 | fn a(){{{ | ^ ^ | = note: `#[warn(unused_braces)]` on by default help: remove these braces | 1 - fn a(){{{ 1 + fn a(){{ | ``` which is now hidden in this case. We would create a span spanning between the pair of redundant {}s but there is only EOF instead of the `}` so we would previously point at nothing. This would cause the debug assertion ice to trigger. I would have loved to just only point at the second delim and say "you can remove that" but I'm not sure how to do that without refactoring the entire diagnostic which seems tricky. :( But given that this does not seem to regress any other tests we have, I think this edge-casey enough be acceptable. Fixes https://github.com/rust-lang/rust/issues/107423 r? @compiler-errors
2023-02-03Rollup merge of #107615 - notriddle:notriddle/nbsp, r=GuillaumeGomezMichael Goulet-5/+5
Replace nbsp in all rustdoc code blocks Based on #106125 by `@dtolnay` — this PR fixes the line wrapping bug. Fixes #106098. This makes code copyable from rustdoc rendered documentation into a Rust source file.
2023-02-03Rollup merge of #107551 - fee1-dead-contrib:rm_const_fnmut_helper, r=oli-obkMichael Goulet-3/+13
Replace `ConstFnMutClosure` with const closures Also fixes a parser bug. cc `@oli-obk` for compiler changes
2023-02-03Make const/fn return params more suggestableMichael Goulet-0/+36
2023-02-03Provide structured suggestion for binding needing type on E0594Esteban Küber-24/+41
Partially address #45405.
2023-02-03Auto merge of #107642 - Dylan-DPC:rollup-edcqhm5, r=Dylan-DPCbors-45/+285
Rollup of 6 pull requests Successful merges: - #107082 (Autotrait bounds on dyn-safe trait methods) - #107427 (Add candidates for DiscriminantKind builtin) - #107539 (Emit warnings on unused parens in index expressions) - #107544 (Improve `TokenCursor`.) - #107585 (Don't cause a cycle when formatting query description that references a FnDef) - #107633 (Fix suggestion for coercing Option<&String> to Option<&str>) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
2023-02-03Rollup merge of #107633 - clubby789:option-string-coerce-fix, r=NilstriebDylan DPC-9/+77
Fix suggestion for coercing Option<&String> to Option<&str> Fixes #107604 This also makes the diagnostic `MachineApplicable`, and runs `rustfix` to check we're not producing incorrect code. ``@rustbot`` label +A-diagnostics
2023-02-03Rollup merge of #107585 - compiler-errors:fndef-sig-cycle, r=oli-obkDylan DPC-10/+25
Don't cause a cycle when formatting query description that references a FnDef When a function returns `-> _`, we use typeck to compute what the resulting type of the body _should_ be. If we call another query inside of typeck and hit a cycle error, we attempt to report the cycle error which requires us to compute all of the query descriptions for the stack. However, if one of the queries in that cycle has a query description that references this function as a FnDef type, we'll cause a *second* cycle error from within the cycle error reporting code, since rendering a FnDef requires us to compute its signature. This causes an unwrap to ICE, since during the *second* cycle reporting code, we try to look for a job that isn't in the active jobs list. We can avoid this by using `with_no_queries!` when computing these query descriptions. Fixes #107089 The only drawback is that the rendering of opaque types in cycles regresses a bit :| I'm open to alternate suggestions about how we may handle this...
2023-02-03Rollup merge of #107539 - PossiblyAShrub:unused-parens-in-index, r=lcnrDylan DPC-0/+41
Emit warnings on unused parens in index expressions Fixes: #96606. I am not sure what the best term for "index expression" is. Is there a better term we could use?
2023-02-03Autotrait bounds on dyn-safe trait methodsDavid Tolnay-0/+38
2023-02-03Disallow impl autotrait for trait objectDavid Tolnay-26/+104
2023-02-04Fix #103320, add explanatory message for [#must_use]yukang-0/+94
2023-02-03Replace nbsp in all rustdoc code blocksMichael Howell-5/+5
Co-Authored-By: David Tolnay <dtolnay@gmail.com>
2023-02-03Auto merge of #107599 - clubby789:debug-less-ref, r=nnethercotebors-7/+7
Don't generate unecessary `&&self.field` in deriving Debug Since unsized fields may only be the last one in a struct, we only need to generate a double reference (`&&self.field`) for the final one. cc `@nnethercote`
2023-02-03Fix suggestion for coercing Option<&String> to Option<&str>clubby789-9/+77
2023-02-03Rollup merge of #107602 - estebank:anon-enum-access, r=compiler-errorsMatthias Krüger-27/+125
Parse and recover from type ascription in patterns Reintroduce part of #106960, which was reverted in #107478. r? `@compiler-errors`
2023-02-03Rollup merge of #107500 - bryangarza:future-sizes-baseline-test, ↵Matthias Krüger-0/+94
r=compiler-errors Add tests to assert current behavior of large future sizes Based on a couple of sources: - https://swatinem.de/blog/future-size/ - https://github.com/rust-lang/rust/issues/62958
2023-02-03Rollup merge of #106805 - madsravn:master, r=compiler-errorsMatthias Krüger-0/+69
Suggest `{var:?}` when finding `{?:var}` in inline format strings Link to issue: https://github.com/rust-lang/rust/issues/106572 This is my first PR to this project, so hopefully I can get some good pointers with me from the first PR. Currently my idea was to test out whether or not this is the correct solution to this issue and then hopefully expand upon the idea to not only work for Debug formatting but for all of them. If this is a valid solution, I will create a new issue to give a better error message to a broader range of wrong-order formatting.
2023-02-03Rollup merge of #106575 - estebank:issue-64008, r=pnkfelixMatthias Krüger-5/+64
Suggest `move` in nested closure when appropriate Fix #64008.
2023-02-02Bless 32bit.Camille GILLOT-8/+8
2023-02-02Add partial propagation test.Camille GILLOT-20/+162
2023-02-02Bless tests.Camille GILLOT-406/+234
2023-02-02Stop deaggregating enums in MIR.Camille GILLOT-383/+120
2023-02-02Interpret aggregates.Camille GILLOT-8/+8
2023-02-02Don't generate unecessary `&&self.field` in deriving Debugclubby789-7/+7
2023-02-02Auto merge of #107000 - GuillaumeGomez:fix-items-in-doc-hidden-block, ↵bors-8/+129
r=notriddle,petrochenkov Fix handling of items inside a `doc(hidden)` block Fixes #106373. cc `@aDotInTheVoid` r? `@notriddle`