| Age | Commit message (Collapse) | Author | Lines | |
|---|---|---|---|---|
| 2020-06-16 | fixup! Note numeric literals that can never fit in an expected type | Ayaz Hafiz | -10/+2 | |
| 2020-06-13 | fixup! Note numeric literals that can never fit in an expected type | Ayaz Hafiz | -2/+2 | |
| 2020-06-13 | Note numeric literals that can never fit in an expected type | Ayaz Hafiz | -0/+12 | |
| re https://github.com/rust-lang/rust/pull/72380#discussion_r438289385 Given the toy code ```rust fn is_positive(n: usize) { n > -1_isize; } ``` We currently get a type mismatch error like the following: ``` error[E0308]: mismatched types --> src/main.rs:2:9 | 2 | n > -1_isize; | ^^^^^^^^ expected `usize`, found `isize` | help: you can convert an `isize` to `usize` and panic if the converted value wouldn't fit | 2 | n > (-1_isize).try_into().unwrap(); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ``` But clearly, `-1` can never fit into a `usize`, so the suggestion will always panic. A more useful message would tell the user that the value can never fit in the expected type: ``` error[E0308]: mismatched types --> test.rs:2:9 | 2 | n > -1_isize; | ^^^^^^^^ expected `usize`, found `isize` | note: `-1_isize` can never fit into `usize` --> test.rs:2:9 | 2 | n > -1_isize; | ^^^^^^^^ ``` Which is what this commit implements. I only added this check for negative literals because - Currently we can only perform such a check for literals (constant value propagation is outside the scope of the typechecker at this point) - A lint error for out-of-range numeric literals is already emitted IMO it makes more sense to put this check in librustc_lint, but as far as I can tell the typecheck pass happens before the lint pass, so I've added it here. r? @estebank | ||||
| 2020-05-20 | refactor check_for_cast | Bastian Kauschke | -2/+13 | |
| 2020-05-20 | fix is_const_context | Bastian Kauschke | -10/+0 | |
| 2020-03-23 | Evaluate repeat expression lengths as late as possible | Oliver Scherer | -6/+6 | |
| 2019-11-18 | Surround types with backticks in type errors | Esteban Küber | -7/+7 | |
| 2019-11-18 | Remove E0308 note when primary label has all info | Esteban Küber | -19/+7 | |
| 2019-11-18 | review comments: tweak prefix strings | Esteban Küber | -2/+2 | |
| 2019-11-18 | Specific labels when referring to "expected" and "found" types | Esteban Küber | -3/+3 | |
| 2019-10-24 | Increase spacing for suggestions in diagnostics | Esteban Küber | -0/+2 | |
| Make the spacing between the code snippet and verbose structured suggestions consistent with note and help messages. | ||||
| 2019-05-03 | Reword casting message | Esteban Küber | -2/+2 | |
| 2019-04-29 | Suggest try_into when possible | Esteban Küber | -0/+8 | |
| 2019-04-18 | hide `--explain` hint if error has no extended info | Andy Russell | -1/+1 | |
| 2018-12-31 | Improve type mismatch error messages | Yuning Zhang | -1/+1 | |
| Replace "integral variable" with "integer" and replace "floating-point variable" with "floating-point number" to make the message less confusing. | ||||
| 2018-12-25 | Remove licenses | Mark Rousskov | -8/+8 | |
| 2018-08-14 | Merged migrated compile-fail tests and ui tests. Fixes #46841. | David Wood | -0/+64 | |
