summary refs log tree commit diff
path: root/src/test/ui/pattern
AgeCommit message (Collapse)AuthorLines
2019-12-23clarify bind-by-move-neither-can-livee..Mazdak Farrokhzad-4/+72
2019-12-23bindings_after_at: harden tests wrt. contexts & slice_patternsMazdak Farrokhzad-108/+477
2019-12-23bindings_after_at: harden tests wrt. promotionMazdak Farrokhzad-93/+235
2019-12-23--bless bindings-after-at testsMazdak Farrokhzad-66/+497
2019-12-23check_legality_of_move_bindings: generalize diagnostics & add commentsMazdak Farrokhzad-12/+13
2019-12-23Introduce `#![feature(bindings_after_at)]`.Mazdak Farrokhzad-38/+1118
Under the gate, `x @ Some(y)` is allowed. This is subject to various restrictions for soundness.
2019-12-23Add test for issue-66270Yuki Okushi-0/+22
2019-12-19Rollup merge of #67189 - LeSeulArtichaut:binop-wording, r=estebankMazdak Farrokhzad-2/+2
Unify binop wording Closes #60497 r? @estebank
2019-12-14Revert "Remove `#![feature(never_type)]` from tests."Niko Matsakis-1/+2
This reverts commit 8f6197f39f7d468dfc5b2bd41dae4769992a2f83.
2019-12-12Update testsLeSeulArtichaut-1/+1
2019-12-12Update UI test expectationsLeSeulArtichaut-1/+1
2019-12-11Revert a diagnostic change in the case of integer rangesNadrieril-8/+8
2019-12-04Reuse `adt_defined_here`Nadrieril-10/+43
2019-12-04Use the default code path to list missing patternsNadrieril-48/+60
This uses the exact same code path that would be used for `match x { _ if false => {} }`, since in both cases the resulting matrix is empty. Since we think the behaviour in that case is ok, then we can remove the special case and use the default code path.
2019-12-04List missing constructors in an almost empty matchNadrieril-71/+101
Actually empty matches are still handled by a different code path
2019-12-04Add testsNadrieril-65/+312
2019-12-04Only warn about missing patterns in the case of an enumNadrieril-80/+26
2019-12-04Add testsNadrieril-16/+104
2019-12-04Make empty match lint more consistent under exhaustive_patternsNadrieril-25/+58
2019-12-04Fix erroneous commentNadrieril-8/+7
2019-12-04Tweak error on empty matchNadrieril-2/+2
2019-12-04Add testsNadrieril-0/+229
2019-12-02Remove top-level or-pattern hackNadrieril-12/+5
2019-12-02Correct error on partially unreachable or-pat in `if let`Nadrieril-15/+12
2019-12-02Add some testsNadrieril-0/+134
2019-11-28Auto merge of #66603 - Nadrieril:fix-65413, r=varkorbors-7/+81
Fix #65413 #65413 was due to an oversight in `pat_constructor` that didn't check if a particular const value was maybe a slice/array const.
2019-11-21Auto merge of #66389 - estebank:type-err-labels, r=petrochenkovbors-25/+17
Specific labels when referring to "expected" and "found" types
2019-11-21Remove `#![feature(never_type)]` from tests.Mazdak Farrokhzad-2/+1
Also remove `never_type` the feature-gate test.
2019-11-21Use appropriate constructor for const slicesNadrieril-23/+9
2019-11-21Add some testsNadrieril-3/+91
2019-11-18Surround types with backticks in type errorsEsteban Küber-7/+7
2019-11-18Remove E0308 note when primary label has all infoEsteban Küber-10/+2
2019-11-18review comments: tweak prefix stringsEsteban Küber-2/+2
2019-11-18Specific labels when referring to "expected" and "found" typesEsteban Küber-11/+11
2019-11-18Update src/test/ui/pattern/issue-53820-slice-pattern-large-array.rsNadrieril Feneanar-0/+3
Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
2019-11-17Small improvement to exhaustiveness diagnosticsNadrieril-6/+6
2019-11-16Add regression test for issue 53820Nadrieril-0/+10
2019-11-16Introduce new FixedLenSlice constructorNadrieril-11/+11
It is used in the case where a variable-length slice pattern is used to match on an array of known size. This allows considering only those entries in the array that are captured by one of the patterns. As a side-effect, diagnostics improve a bit for those cases.
2019-11-16Add some testsNadrieril-23/+49
2019-11-15Add regression testNadrieril-0/+6
2019-11-15Apply suggestions from code reviewNadrieril Feneanar-1/+1
Co-Authored-By: Mazdak Farrokhzad <twingoow@gmail.com>
2019-11-15Add test for failing `try_eval_bits`Nadrieril-1/+16
2019-11-13Tweak non-char/numeric in range pattern diagnosticYuki Okushi-4/+4
2019-11-06Split slice-patterns test as suggested by CentrilNadrieril-89/+109
2019-11-05Move a few more tests to the usefulness/ folderNadrieril-0/+0
2019-11-05Use VarLenSlice consistently when splitting constructorsNadrieril-21/+21
The previous behaviour ignored slice lengths above a certain length because it could not do otherwise. We now have VarLenSlice however, that can represent the ignored lengths to make the algorithm more consistent. This does not change the correctness of the algorithm, but makes it easier to reason about. As a nice side-effect, exhaustiveness errors have improved: they now capture all missing lengths instead of only the shortest.
2019-11-05Add some test casesNadrieril-1/+31
2019-11-05Make exhaustiveness error message more consistent for slice patternsNadrieril-11/+11
This improves error messages by indicating when slices above a certain lengths have not been matched. Previously, we would only report examples of such lengths, but of course never all of them.
2019-11-05Don't use max_slice_length when subtracting from VarLenSliceNadrieril-2/+2
This alters error messages slightly, but that'll be improved later
2019-11-05Add some slice-pattern exhaustiveness testsNadrieril-0/+213