summary refs log tree commit diff
path: root/src/test/ui/missing
AgeCommit message (Collapse)AuthorLines
2021-12-14Suggest to specify a target triple when eh_personality lang item is missingLucas Kent-1/+1
2021-12-10bless testsEllen-8/+8
2021-12-10update testsEllen-3/+0
2021-10-03Practice diagnostic message conventionHirochika Matsumoto-3/+3
2021-08-11Modify structured suggestion outputEsteban Küber-13/+13
* On suggestions that include deletions, use a diff inspired output format * When suggesting addition, use `+` as underline * Color highlight modified span
2021-05-07Fix impl type parameter suggestion involving constsmibac138-9/+49
2021-05-06Expand impl type parameter suggestion testsmibac138-0/+103
2021-02-20Fix suggestion span and move suggestions into new subwindow.Reese Williams-3/+6
2021-02-14Clarify error message and remove pretty printing in help suggestions.Reese Williams-1/+3
2020-11-19Regroup many usefulness-related test in the same folderNadrieril-34/+0
2020-10-17Rollup merge of #75209 - Hirrolot:suggest-macro-imports, r=estebankYuki Okushi-0/+3
Suggest imports of unresolved macros Closes https://github.com/rust-lang/rust/issues/75191.
2020-10-02Implement Make `handle_alloc_error` default to panic (for no_std + liballoc)Harald Hoyer-1/+3
Related: https://github.com/rust-lang/rust/issues/66741 Guarded with `#![feature(default_alloc_error_handler)]` a default `alloc_error_handler` is called, if a custom allocator is used and no other custom `#[alloc_error_handler]` is defined. The panic message does not contain the size anymore, because it would pull in the fmt machinery, which would blow up the code size significantly.
2020-09-30Re-run tests with --blessTemirkhan Myrzamadi-0/+3
2020-09-02pretty: trim paths of unique symbolsDan Aloni-4/+4
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-12Detect tuple struct incorrectly used as struct patEsteban Küber-15/+5
2020-04-16Fixed issue with self: &Box<Self>Duddino-2/+4
2020-04-16fixed missing trait method suggests incorrect code (self parameter not named ↵Duddino-2/+8
self)
2020-03-27non-exhastive diagnostic: add note re. scrutinee typeMazdak Farrokhzad-0/+1
2020-02-13macro_legacy_warnings -> errorMazdak Farrokhzad-36/+0
2020-02-09Auto merge of #68689 - estebank:where-clause-sugg-missing-fn, r=varkorbors-1/+1
When suggesting associated fn with type parameters, include in the structured suggestion Address #50734. ``` error[E0046]: not all trait items implemented, missing: `foo`, `bar`, `baz` --> file.rs:14:1 | 14 | impl TraitA<()> for S { | ^^^^^^^^^^^^^^^^^^^^^ missing `foo`, `bar`, `baz` in implementation | = help: implement the missing item: `fn foo<T>(_: T) -> Self where T: TraitB, TraitB::Item = A { unimplemented!() }` = help: implement the missing item: `fn bar<T>(_: T) -> Self { unimplemented!() }` = help: implement the missing item: `fn baz<T>(_: T) -> Self where T: TraitB, <T as TraitB>::Item: std::marker::Copy { unimplemented!() }` ``` It doesn't work well for associated types with `ty::Predicate::Projection`s as we need to resugar `T: Trait, Trait::Assoc = K` → `T: Trait<Assoc = K>`.
2020-02-08review commentEsteban Küber-1/+1
2020-02-06rustc_macros: don't limit the -Zmacro-backtrace suggestion to extern macros.Eduard-Mihai Burtescu-0/+2
2019-12-23more recovery in if-parsingMazdak Farrokhzad-2/+2
2019-12-21Require issue = "none" over issue = "0" in unstable attributesRoss MacArthur-1/+1
2019-12-14Indicate origin of where type parameter for uninferred typesOhad Ravid-1/+1
2019-12-11Add more context for type parametersEsteban Küber-1/+1
2019-11-18Surround types with backticks in type errorsEsteban Küber-1/+1
2019-11-18Remove E0308 note when primary label has all infoEsteban Küber-3/+0
2019-11-18review comments: tweak prefix stringsEsteban Küber-2/+2
2019-11-08Rollup merge of #66007 - estebank:remove-here, r=CentrilMazdak Farrokhzad-3/+3
Remove "here" from "expected one of X here"
2019-11-06Remove "here" from "expected one of X here"Esteban Küber-3/+3
2019-11-06Suggest missing item from `trait` in `impl`Esteban Küber-3/+3
2019-09-15resolve: Remove `!` from "cannot find" diagnostics for macrosVadim Petrochenkov-2/+2
2019-09-14Provide a span if main function is not present in crateMark Rousskov-1/+3
Unfortunately, the diagnotic machinery does not cope well with an empty span which can happen if the crate is empty, in which case we merely set a spanless note.
2019-09-06Fixed grammar/style in error messages and reblessed tests.Alexander Regueiro-2/+2
2019-08-09review comments: typo and rewordingEsteban Küber-1/+1
2019-08-09review comment: review wording or missing return errorEsteban Küber-1/+1
2019-08-09Tweak wording of fn without explicit returnEsteban Küber-1/+1
2019-08-09Change wording for function without return valueEsteban Küber-1/+1
Fix #62677
2019-07-19normalize use of backticks in compiler messages for librustc_metadataSamy Kacimi-1/+1
https://github.com/rust-lang/rust/issues/60532
2019-07-03Migrate compile-pass annotations to build-passYuki Okushi-1/+1
2019-04-18hide `--explain` hint if error has no extended infoAndy Russell-1/+1
2019-04-12Stabilize the `alloc` crate.Simon Sapin-2/+2
This implements RFC 2480: * https://github.com/rust-lang/rfcs/pull/2480 * https://github.com/rust-lang/rfcs/blob/master/text/2480-liballoc.md Closes https://github.com/rust-lang/rust/issues/27783
2019-03-11Update testsVadim Petrochenkov-9/+9
2019-03-02Point at enum definition when match patterns are not exhaustiveEsteban Küber-2/+10
``` error[E0004]: non-exhaustive patterns: type `X` is non-empty --> file.rs:9:11 | 1 | / enum X { 2 | | A, | | - variant not covered 3 | | B, | | - variant not covered 4 | | C, | | - variant not covered 5 | | } | |_- `X` defined here ... 9 | match x { | ^ | = help: ensure that all possible cases are being handled, possibly by adding wildcards or more match arms error[E0004]: non-exhaustive patterns: `B` and `C` not covered --> file.rs:11:11 | 1 | / enum X { 2 | | A, 3 | | B, 4 | | C, | | - not covered 5 | | } | |_- `X` defined here ... 11 | match x { | ^ patterns `C` not covered ``` When a match expression doesn't have patterns covering every variant, point at the enum's definition span. On a best effort basis, point at the variant(s) that are missing. This does not handle the case when the missing pattern is due to a field's enum variants: ``` enum E1 { A, B, C, } enum E2 { A(E1), B, } fn foo() { match E2::A(E1::A) { E2::A(E1::B) => {} E2::B => {} } //~^ ERROR `E2::A(E1::A)` and `E2::A(E1::C)` not handled } ``` Unify look between match with no arms and match with some missing patterns. Fix #37518.
2019-02-08Use descriptive variant namevarkor-5/+5
2019-02-07Improve the error messages for missing stability attributesvarkor-5/+5
This makes the capitalisation consistent and provides more context (especially for missing top-level attributes).
2018-12-30Tweak E0308 error for clarityEsteban Küber-1/+1
2018-12-30Point at function name spanEsteban Küber-1/+3
2018-12-30Point at the return type span on type mismatch due to missing returnEsteban Küber-2/+2
Do not point at the entire block span on fn return type mismatches caused by missing return.