about summary refs log tree commit diff
path: root/src/test/ui/liveness
AgeCommit message (Collapse)AuthorLines
2021-02-28Bless some testsGiacomo Stevanato-10/+10
2020-10-21Bless liveness-asm outputOlivia Crain-3/+3
2020-10-21Limit liveness-asm tests to x86_64Olivia Crain-0/+1
2020-10-18Refactor liveness-issue-77915 to liveness-asm and improve testsOlivia Crain-36/+66
2020-10-17Mark inout asm! operands as used in liveness passOlivia Crain-0/+36
2020-09-29Liveness analysis for everybodyTomasz Miąsko-6/+143
Perform liveness analysis for every body instead of limiting it to fns.
2020-09-27liveness: Test interaction with automatically_derived attributeTomasz Miąsko-0/+53
2020-09-02pretty: trim paths of unique symbolsDan Aloni-5/+5
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-07-28Make closures and generators a must use typesTomasz Miąsko-9/+9
Warn about unused expressions with closure or generator type. This follows existing precedence of must use annotations present on `FnOnce`, `FnMut`, `Fn` traits, which already indirectly apply to closures in some cases, e.g.,: ```rust fn f() -> impl FnOnce() { || {} } fn main() { // an existing warning: unused implementer of `std::ops::FnOnce` that must be used: f(); // a new warning: unused closure that must be used: || {}; } ```
2020-05-29liveness: Warn about unused captured variablesTomasz Miąsko-0/+258
2020-04-12Rollup merge of #67766 - sapir:fix-unused-in-or-pattern-warning, r=matthewjasperDylan DPC-8/+8
Fix warning for unused variables in or pattern (issue #67691) Is this a good way to fix it? Also, the tests fail, the "fixed" code output says `{ i, j }` instead of `{ i, j: _ }`, how can I fix that?
2020-04-11rustc: Add a warning count upon completionRoccoDev-2/+2
2020-04-10Try to fix warning for unused variables in or patterns, issue #67691sapir-8/+8
2020-03-23Reword unused variable warningAlex Tokarev-8/+8
2020-02-06rustc_macros: don't limit the -Zmacro-backtrace suggestion to extern macros.Eduard-Mihai Burtescu-0/+2
2020-01-24Normalise notes with the/isvarkor-4/+4
2019-11-18Surround types with backticks in type errorsEsteban Küber-8/+8
2019-11-18Remove E0308 note when primary label has all infoEsteban Küber-24/+0
2019-11-18review comments: tweak prefix stringsEsteban Küber-16/+16
2019-09-21Do not trigger unreachable lint in async body and Use span labelsEsteban Küber-6/+3
2019-09-18Point at original span when emitting unreachable lintAaron Hill-0/+5
Fixes #64590 When we emit an 'unreachable' lint, we now add a note pointing at the expression that actually causes the code to be unreachable (e.g. `return`, `break`, `panic`). This is especially useful when macros are involved, since a diverging expression might be hidden inside of a macro invocation.
2019-08-09review comments: typo and rewordingEsteban Küber-6/+6
2019-08-09review comment: review wording or missing return errorEsteban Küber-6/+6
2019-08-09Tweak wording of fn without explicit returnEsteban Küber-6/+6
2019-08-09Change wording for function without return valueEsteban Küber-6/+6
Fix #62677
2019-07-17normalize use of backticks in compiler messages for librustc/lintSamy Kacimi-2/+2
https://github.com/rust-lang/rust/issues/60532
2019-07-06Make WhileTrue into an EarlyLintPass lint.Mazdak Farrokhzad-0/+23
2019-04-22update tests for migrate mode by defaultMatthew Jasper-247/+50
2019-03-17Updated UI test output to remove test annotations for revisionsMathias Blikstad-24/+24
2019-03-11Update NLL testsVadim Petrochenkov-5/+5
2019-03-11Update testsVadim Petrochenkov-17/+17
2019-01-28Unused variable suggestions on all patterns.David Wood-8/+8
This commit extends existing suggestions to prefix unused variable bindings in match arms with an underscore so that it applies to all patterns in a match arm.
2019-01-24Fix --compare-mode=nll testsEsteban Küber-10/+13
2019-01-19Rollup merge of #57723 - estebank:fix, r=davidtwcoMazdak Farrokhzad-1/+1
Point at cause for expectation in return type type error Various improvements and fixes for type errors in return expressions. Fix #57664.
2019-01-18Rollup merge of #57302 - sinkuu:unused_assignments_fp, r=estebankMazdak Farrokhzad-0/+9
Fix unused_assignments false positive Fixes #22630. In liveness analysis, make `continue` jump to the loop condition's `LiveNode` (`cond` as in comment) instead of the loop's one (`expr`). https://github.com/rust-lang/rust/blob/069b0c410808c1d1d33b495e048b1186e9f8d57f/src/librustc/middle/liveness.rs#L1358-L1370
2019-01-18Point at return type when appropriateEsteban Küber-1/+1
2019-01-05Auto merge of #57230 - estebank:return-mismatch, r=varkorbors-30/+30
Modify mismatched type error for functions with no return Fix #50009. ``` error[E0308]: mismatched types --> $DIR/coercion-missing-tail-expected-type.rs:3:24 | LL | fn plus_one(x: i32) -> i32 { //~ ERROR mismatched types | -------- ^^^ expected i32, found () | | | this function's body doesn't return LL | x + 1; | - help: consider removing this semicolon | = note: expected type `i32` found type `()` ``` instead of ``` error[E0308]: mismatched types --> $DIR/coercion-missing-tail-expected-type.rs:3:28 | LL | fn plus_one(x: i32) -> i32 { //~ ERROR mismatched types | ____________________________^ LL | | x + 1; | | - help: consider removing this semicolon LL | | } | |_^ expected i32, found () | = note: expected type `i32` found type `()` ```
2019-01-03Fix unused_assignments false positiveShotaro Yamada-0/+9
Make `continue` jump to the loop condition's `LiveNode` instead of one of the loop body.
2018-12-30Tweak E0308 error for clarityEsteban Küber-18/+16
2018-12-30Point at function name spanEsteban Küber-16/+29
2018-12-30Point at the return type span on type mismatch due to missing returnEsteban Küber-30/+19
Do not point at the entire block span on fn return type mismatches caused by missing return.
2018-12-29add non-copy note to stderrcsmoe-0/+2
2018-12-25Remove licensesMark Rousskov-212/+53
2018-12-24make non_camel_case_types an early lintAndy Russell-3/+3
2018-12-07Change to give a help messageJohn Ginger-6/+10
2018-12-03Fix stderr filesJohn Ginger-0/+6
2018-10-16updates to expected output for other ui tests.Felix S. Klock II-1/+1
2018-09-28test fix for #54015Rusty Blitzerr-0/+22
2018-09-28Test fixes for the change of error message for issue #54015Rusty Blitzerr-1/+1
2018-09-18De-duplicate moved variable errors.David Wood-9/+1
By introducing a new map that tracks the errors reported and the `Place`s that spawned those errors against the move out that the error was referring to, we are able to silence duplicate errors by emitting only the error which corresponds to the most specific `Place` (that which other `Place`s which reported errors are prefixes of). This generally is an improvement, however there is a case - `liveness-move-in-while` - where the output regresses.