rust/tests/ui/wf
bors faefc618cf Auto merge of #124219 - gurry:122989-ice-unexpected-anon-const, r=compiler-errors
Do not ICE on `AnonConst`s in `diagnostic_hir_wf_check`

Fixes #122989

Below is the snippet from #122989 that ICEs:
```rust
trait Traitor<const N: N<2> = 1, const N: N<2> = N> {
    fn N(&N) -> N<2> {
        M
    }
}

trait N<const N: Traitor<2> = 12> {}
```

The `AnonConst` that triggers the ICE is the `2` in the param `const N: N<2> = 1`. The currently existing code in `diagnostic_hir_wf_check` deals only with `AnonConst`s that are default values of some param, but  the `2` is not a default value. It is just an `AnonConst` HIR node inside a `TraitRef` HIR node corresponding to `N<2>`. Therefore the existing code cannot handle it and this PR ensures that it does.
2024-05-07 20:01:18 +00:00
..
closure-wf.rs Add test 2024-04-25 10:51:54 -04:00
closure-wf.stderr Add test 2024-04-25 10:51:54 -04:00
conflicting-impls.rs Silence some follow-up errors on trait impls in case the trait has conflicting or otherwise incoherent impls 2024-04-09 10:23:58 +00:00
conflicting-impls.stderr Silence some follow-up errors on trait impls in case the trait has conflicting or otherwise incoherent impls 2024-04-09 10:23:58 +00:00
hir-wf-canonicalized.rs [AUTO-GENERATED] Migrate ui tests from `//` to `//@` directives 2024-02-16 20:02:50 +00:00
hir-wf-canonicalized.stderr improve pretty printing for trait objects 2024-02-07 16:09:46 +01:00
hir-wf-check-erase-regions.rs [AUTO-GENERATED] Migrate ui tests from `//` to `//@` directives 2024-02-16 20:02:50 +00:00
hir-wf-check-erase-regions.stderr Provide more context on derived obligation error primary label 2024-01-30 21:28:18 +00:00
ice-hir-wf-check-anon-const-issue-122199.rs Change an ICE regression test to use the original reproducer 2024-03-23 11:22:17 +05:30
ice-hir-wf-check-anon-const-issue-122199.stderr Change an ICE regression test to use the original reproducer 2024-03-23 11:22:17 +05:30
ice-hir-wf-check-anon-const-issue-122989.rs Do not ICE on `AnonConst`s in `diagnostic_hir_wf_check` 2024-04-22 10:31:32 +05:30
ice-hir-wf-check-anon-const-issue-122989.stderr Do not ICE on `AnonConst`s in `diagnostic_hir_wf_check` 2024-04-22 10:31:32 +05:30
issue-48638.rs [AUTO-GENERATED] Migrate ui tests from `//` to `//@` directives 2024-02-16 20:02:50 +00:00
issue-87495.rs
issue-87495.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-95665.rs
issue-95665.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-96810.rs
issue-96810.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-103573.rs
issue-103573.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
issue-110157.rs return ty::Error when equating ty::Error 2024-02-19 23:54:49 +00:00
issue-110157.stderr return ty::Error when equating ty::Error 2024-02-19 23:54:49 +00:00
unnormalized-projection-guides-inference.rs [AUTO-GENERATED] Migrate ui tests from `//` to `//@` directives 2024-02-16 20:02:50 +00:00
wf-array-elem-sized.rs
wf-array-elem-sized.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-associated-const.rs wf-check type annotations before normalization 2024-01-16 09:25:28 +01:00
wf-associated-const.stderr wf-check type annotations before normalization 2024-01-16 09:25:28 +01:00
wf-complex-assoc-type.rs
wf-complex-assoc-type.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-const-type.rs Check that return type is WF in typeck 2024-03-06 16:51:17 +05:30
wf-const-type.stderr Check that return type is WF in typeck 2024-03-06 16:51:17 +05:30
wf-convert-unsafe-trait-obj-box.rs
wf-convert-unsafe-trait-obj-box.stderr On object safety error, mention new enum as alternative 2023-10-29 23:55:46 +00:00
wf-convert-unsafe-trait-obj.rs
wf-convert-unsafe-trait-obj.stderr On object safety error, mention new enum as alternative 2023-10-29 23:55:46 +00:00
wf-enum-bound.rs
wf-enum-bound.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-enum-fields-struct-variant.rs
wf-enum-fields-struct-variant.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-enum-fields.rs
wf-enum-fields.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-fn-def-check-sig-1.rs rebase 2024-04-04 02:14:57 +01:00
wf-fn-def-check-sig-1.stderr rebase 2024-04-04 02:14:57 +01:00
wf-fn-def-check-sig-2.rs check `FnDef` return type for WF 2024-04-04 01:55:29 +01:00
wf-fn-def-check-sig-2.stderr rebase 2024-04-04 02:14:57 +01:00
wf-fn-where-clause.rs
wf-fn-where-clause.stderr review comment: change wording 2024-02-01 03:31:03 +00:00
wf-foreign-fn-decl-ret.rs
wf-foreign-fn-decl-ret.stderr Point out if a local trait has no implementations 2023-09-10 21:20:36 +00:00
wf-impl-associated-type-region.rs
wf-impl-associated-type-region.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-impl-associated-type-trait.rs
wf-impl-associated-type-trait.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-impl-self-type.rs
wf-impl-self-type.stderr On E0277 be clearer about implicit `Sized` bounds on type params and assoc types 2024-02-01 03:30:26 +00:00
wf-in-fn-arg.rs
wf-in-fn-arg.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-in-fn-ret.rs Continue compilation after check_mod_type_wf errors 2024-02-14 11:00:30 +00:00
wf-in-fn-ret.stderr Continue compilation after check_mod_type_wf errors 2024-02-14 11:00:30 +00:00
wf-in-fn-type-arg.rs
wf-in-fn-type-arg.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-in-fn-type-ret.rs
wf-in-fn-type-ret.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-in-fn-type-static.rs
wf-in-fn-type-static.stderr remove trailing dots 2023-10-08 10:06:17 +00:00
wf-in-fn-where-clause.rs
wf-in-fn-where-clause.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-in-foreign-fn-decls-issue-80468.rs make `type_flags(ReError) & HAS_ERROR` 2024-03-20 17:29:58 +00:00
wf-in-foreign-fn-decls-issue-80468.stderr make `type_flags(ReError) & HAS_ERROR` 2024-03-20 17:29:58 +00:00
wf-in-obj-type-static.rs
wf-in-obj-type-static.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-in-obj-type-trait.rs
wf-in-obj-type-trait.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-in-where-clause-static.rs [AUTO-GENERATED] Migrate ui tests from `//` to `//@` directives 2024-02-16 20:02:50 +00:00
wf-inherent-impl-method-where-clause.rs
wf-inherent-impl-method-where-clause.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-inherent-impl-where-clause.rs
wf-inherent-impl-where-clause.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-misc-methods-issue-28609.rs
wf-misc-methods-issue-28609.stderr
wf-normalization-sized.next.stderr Mark some next-solver-behavior tests explicitly with revisions 2024-03-10 23:23:46 -04:00
wf-normalization-sized.rs Mark some next-solver-behavior tests explicitly with revisions 2024-03-10 23:23:46 -04:00
wf-object-safe.rs
wf-object-safe.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-outlives-ty-in-fn-or-trait.rs
wf-outlives-ty-in-fn-or-trait.stderr remove trailing dots 2023-10-08 10:06:17 +00:00
wf-packed-on-proj-of-type-as-unimpl-trait.rs
wf-packed-on-proj-of-type-as-unimpl-trait.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-static-method.rs borrowck: use implied bounds from impl header 2024-01-16 09:25:28 +01:00
wf-static-method.stderr borrowck: use implied bounds from impl header 2024-01-16 09:25:28 +01:00
wf-static-type.rs Check that return type is WF in typeck 2024-03-06 16:51:17 +05:30
wf-static-type.stderr Check that return type is WF in typeck 2024-03-06 16:51:17 +05:30
wf-struct-bound.rs
wf-struct-bound.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-struct-field.rs
wf-struct-field.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-trait-associated-type-bound.rs
wf-trait-associated-type-bound.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-trait-associated-type-region.rs
wf-trait-associated-type-region.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-trait-associated-type-trait.rs
wf-trait-associated-type-trait.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-trait-bound.rs
wf-trait-bound.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-trait-default-fn-arg.rs
wf-trait-default-fn-arg.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-trait-default-fn-ret.rs
wf-trait-default-fn-ret.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-trait-default-fn-where-clause.rs
wf-trait-default-fn-where-clause.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-trait-fn-arg.rs
wf-trait-fn-arg.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-trait-fn-ret.rs
wf-trait-fn-ret.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-trait-fn-where-clause.rs
wf-trait-fn-where-clause.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-trait-superbound.rs
wf-trait-superbound.stderr Show number in error message even for one error 2023-11-24 19:15:52 +01:00
wf-unsafe-trait-obj-match.rs
wf-unsafe-trait-obj-match.stderr Remove a suggestion that is redundant 2024-02-15 17:20:44 +00:00