summary refs log tree commit diff
path: root/src/test/ui/borrowck
AgeCommit message (Collapse)AuthorLines
2020-06-28Update testsDylan MacKenzie-6/+21
2020-06-26Explain move errors that occur due to method calls involving `self`Aaron Hill-1/+6
This is a re-attempt of #72389 (which was reverted in #73594) Instead of using `ExpnKind::Desugaring` to represent operators, this PR checks the lang item directly.
2020-06-24Provide suggestions for some moved value errorsEsteban Küber-0/+228
When encountering an used moved value where the previous move happened in a `match` or `if let` pattern, suggest using `ref`. Fix #63988. When encountering a `&mut` value that is used in multiple iterations of a loop, suggest reborrowing it with `&mut *`. Fix #62112.
2020-06-22Revert "Rollup merge of #72389 - Aaron1011:feature/move-fn-self-msg, ↵Aaron Hill-6/+1
r=nikomatsakis" This reverts commit 372cb9b69c76a042d0b9d4b48ff6084f64c84a2c, reversing changes made to 5c61a8dc34c3e2fc6d7f02cb288c350f0233f944.
2020-06-15Rollup merge of #72598 - Aaron1011:feature/fnmut-capture-span, r=nikomatsakisRalf Jung-0/+3
Display information about captured variable in `FnMut` error Fixes #69446 When we encounter a region error involving an `FnMut` closure, we display a specialized error message. However, we currently do not tell the user which upvar was captured. This makes it difficult to determine the cause of the error, especially when the closure is large. This commit records marks constraints involving closure upvars with `ConstraintCategory::ClosureUpvar`. When we decide to 'blame' a `ConstraintCategory::Return`, we additionall store the captured upvar if we found a `ConstraintCategory::ClosureUpvar` in the path. When generating an error message, we point to relevant spans if we have closure upvar information available. We further customize the message if an `async` closure is being returned, to make it clear that the captured variable is being returned indirectly.
2020-06-11Explain move errors that occur due to method calls involving `self`Aaron Hill-1/+6
2020-06-04test: ui: skip tests which aren't appropriate for RISC-VTom Eccles-7/+8
2020-05-25Display information about captured variable in `FnMut` errorAaron Hill-0/+3
Fixes #69446 When we encounter a region error involving an `FnMut` closure, we display a specialized error message. However, we currently do not tell the user which upvar was captured. This makes it difficult to determine the cause of the error, especially when the closure is large. This commit records marks constraints involving closure upvars with `ConstraintCategory::ClosureUpvar`. When we decide to 'blame' a `ConstraintCategory::Return`, we additionall store the captured upvar if we found a `ConstraintCategory::ClosureUpvar` in the path. When generating an error message, we point to relevant spans if we have closure upvar information available. We further customize the message if an `async` closure is being returned, to make it clear that the captured variable is being returned indirectly.
2020-05-22Update testsMatthew Jasper-132/+50
2020-05-08Skip tests on emscriptenYuki Okushi-0/+1
2020-05-06Move tests from `test/run-fail` to UIYuki Okushi-0/+11
2020-05-02Report cannot move errors in promoted MIRMatthew Jasper-0/+51
2020-04-11rustc: Add a warning count upon completionRoccoDev-4/+4
2020-03-29Tweak `suggest_constraining_type_param`Esteban Küber-4/+3
Some of the bound restriction structured suggestions were incorrect while others had subpar output.
2020-03-26Update tests to use llvm_asm!Amanieu d'Antras-31/+31
2020-03-22Fix invalid suggestion on `&mut` iterators yielding `&` referencesWonwoo Choi-0/+23
2020-03-09test(patterns): add borrowck tests for combination of pattern featuresMatthew Kuo-0/+432
Adds borrowck tests for the following features: - bindings_after_at - or_patterns - slice_patterns - box_patterns
2020-02-24parser: `token` -> `normalized_token`, `nonnormalized_token` -> `token`Vadim Petrochenkov-9/+11
2020-02-14Fix tests after rebaseMatthew Jasper-49/+68
2020-02-11Rollup merge of #68816 - estebank:fn-mut-closure, r=varkorDylan DPC-130/+170
Tweak borrow error on `FnMut` when `Fn` is expected Fix #31701, fix #66097.
2020-02-11Auto merge of #68929 - matprec:consistent-issue-references, r=Dylan-DPCbors-1/+1
Make issue references consistent Fixes https://github.com/rust-lang/rust/issues/62976 cc https://github.com/rust-lang/rust/pull/63008 r? @varkor because you reviewed the original pr
2020-02-09--bless --compare-mode=nllMatthias Prechtl-1/+1
2020-02-09Improve reporting errors and suggestions for trait boundsPatryk Wychowaniec-3/+7
2020-02-08review commentsEsteban Küber-6/+2
2020-02-06rustc_macros: don't limit the -Zmacro-backtrace suggestion to extern macros.Eduard-Mihai Burtescu-2/+4
2020-02-06rustc: rename -Zexternal-macro-backtrace to -Zmacro-backtrace.Eduard-Mihai Burtescu-2/+2
2020-02-03Tweak borrow error on `FnMut` when `Fn` is expectedEsteban Küber-130/+174
2020-02-03Auto merge of #67668 - matthewjasper:or-patterns, r=pnkfelixbors-0/+205
Implement MIR lowering for or-patterns This is the last thing needed to get meaningful run-pass tests for or-patterns. There probably need to be more tests before stabilizing this, but the most important cases should have been covered. Note: we can generate exponentially large MIR CFGs when using or-patterns containing bindings, type ascriptions, or that are for a match arm with a guard. `src/test/mir-opt/exponential-or.rs` shows the best case for what we currently do. cc #54883 closes #60350 closes #67514 cc @Centril r? @pnkfelix
2020-02-03Add more tests for or-patternsMatthew Jasper-0/+205
2020-02-02compiletest: error if `compile-fail` header in ui test.Tyler Lanphear-14/+7
2020-01-31Auto merge of #68080 - varkor:declared-here, r=petrochenkovbors-7/+7
Address inconsistency in using "is" with "declared here" "is" was generally used for NLL diagnostics, but not other diagnostics. Using "is" makes the diagnostics sound more natural and readable, so it seems sensible to commit to them throughout. r? @Centril
2020-01-29Fix revision annotations in borrowck-feature-nll-overrides-migrateTomasz Miąsko-2/+2
2020-01-24Update new testsvarkor-4/+4
2020-01-24Normalise notes with the/isvarkor-2/+2
2020-01-24Normalise diagnostics with respect to "the X is declared/defined here"varkor-1/+1
2020-01-18slice_patterns: address review commentsMazdak Farrokhzad-1/+0
2020-01-18slice_patterns: remove gates in testsMazdak Farrokhzad-185/+141
2020-01-09Update testsVadim Petrochenkov-3/+23
2020-01-08slice patterns: harden match-based borrowck testsMazdak Farrokhzad-0/+978
2019-12-21Rollup merge of #67467 - matthewjasper:test-slice-patterns, r=oli-obkMazdak Farrokhzad-0/+316
Test slice patterns more Adds tests for const evaluation and some more borrow checking tests. Fixes some bugs in const eval for subslice patterns. closes #66934 r? @oli-obk cc @Centril
2019-12-21Add more tests for slice patternsMatthew Jasper-0/+316
2019-12-20Rollup merge of #67314 - matthewjasper:union-move-errors, r=nikomatsakisMazdak Farrokhzad-0/+57
Don't suppress move errors for union fields closes #66500
2019-12-19Don't suppress move errors for union fieldsMatthew Jasper-0/+57
2019-12-18Add more tests for raw_ref_opMatthew Jasper-0/+268
2019-12-14Revert "Remove `#![feature(never_type)]` from tests."Niko Matsakis-0/+2
This reverts commit 8f6197f39f7d468dfc5b2bd41dae4769992a2f83.
2019-12-09Add more tests for borrowck and dropck slice pattern handlingMatthew Jasper-75/+817
2019-11-28Deduplicate type param constraint suggestion codeEsteban Küber-1/+1
2019-11-28Use structured suggestion when requiring `Copy` constraint in type paramEsteban Küber-2/+2
2019-11-26Rollup merge of #66754 - estebank:rustdoc-capitalization, r=Dylan-DPCTyler Mandry-29/+5
Various tweaks to diagnostic output
2019-11-25Tweak move error due to non-CopyEsteban Küber-29/+5