rust/tests/ui/type
León Orell Valerian Liehr b3604de1df
Rollup merge of #125015 - fmease:pat-tys-proh-gen-args-on-ct-params, r=spastorino
Pattern types: Prohibit generic args on const params

Addresses https://github.com/rust-lang/rust/pull/123689/files#r1562676629.

NB: Technically speaking, *not* prohibiting generics args on const params is not a bug as `pattern_types` is an *internal* feature and as such any uncaught misuses of it are considered to be the fault of the user. However, permitting this makes me slightly uncomfortable esp. since we might want to make pattern types available to the public at some point and I don't want this oversight to be able to slip into the language (for comparison, ICEs triggered by the use of internal features are like super fine).

Furthermore, this is an ad hoc fix. A more general fix would be changing the representation of the pattern part of pattern types in such a way that it can reuse preexisting lowering routines for exprs / anon consts. See also this [Zulip discussion](432410768) and #124650.

Also note that we currently don't properly typeck the pattern of pat tys. This however is out of scope for this PR.

cc ``@oli-obk``
r? ``@spastorino`` as discussed
2024-05-22 19:04:44 +02:00
..
ascription [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
auxiliary
pattern_types Rollup merge of #125015 - fmease:pat-tys-proh-gen-args-on-ct-params, r=spastorino 2024-05-22 19:04:44 +02:00
type-check Check closure args and returns are WF 2024-04-25 10:03:17 -04:00
binding-assigned-block-without-tail-expression.rs
binding-assigned-block-without-tail-expression.stderr
clarify-error-for-generics-with-default-issue-120785.rs Update item order in test 2024-02-28 19:28:34 -05:00
clarify-error-for-generics-with-default-issue-120785.stderr Update item order in test 2024-02-28 19:28:34 -05:00
closure-with-wrong-borrows.rs
closure-with-wrong-borrows.stderr
issue-7607-1.rs Move some tests 2024-04-21 15:43:43 -03:00
issue-7607-1.stderr Move some tests 2024-04-21 15:43:43 -03:00
issue-7607-2.rs Move some tests 2024-04-21 15:43:43 -03:00
issue-58355.rs
issue-58355.stderr Provide more context on derived obligation error primary label 2024-01-30 21:28:18 +00:00
issue-67690-type-alias-bound-diagnostic-crash.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-67690-type-alias-bound-diagnostic-crash.stderr
issue-91268.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-91268.stderr
issue-94187-verbose-type-name.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
issue-100584.rs
issue-100584.stderr
issue-101866.rs
issue-101866.stderr Deduplicate more sized errors on call exprs 2024-01-24 02:53:15 +00:00
issue-102598.rs
issue-102598.stderr
issue-103271.rs
issue-103271.stderr
missing-let-in-binding-2.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
missing-let-in-binding-2.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
missing-let-in-binding-2.stderr
missing-let-in-binding-3.rs
missing-let-in-binding-3.stderr
missing-let-in-binding-4.rs
missing-let-in-binding-4.stderr
missing-let-in-binding.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
missing-let-in-binding.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
missing-let-in-binding.stderr
option-ref-advice.rs
option-ref-advice.stderr
subtyping-opaque-type.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-alias-bounds.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-alias-bounds.stderr
type-annotation-needed.rs
type-annotation-needed.stderr
type-arg-out-of-scope.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-arg-out-of-scope.stderr
type-ascription-instead-of-initializer.rs
type-ascription-instead-of-initializer.stderr Detect more cases of = to : typo 2024-03-01 02:03:00 +00:00
type-ascription-instead-of-statement-end.rs
type-ascription-instead-of-statement-end.stderr
type-ascription-precedence.rs
type-ascription-precedence.stderr
type-ascription-soundness.rs
type-ascription-soundness.stderr
type-ascription-with-fn-call.fixed [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-ascription-with-fn-call.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-ascription-with-fn-call.stderr
type-ascription.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-check-defaults.rs
type-check-defaults.stderr Use TraitRef::to_string sorting in favor of TraitRef::ord, as the latter compares DefIds which we need to avoid 2024-03-27 14:02:15 +00:00
type-dependent-def-issue-49241.rs
type-dependent-def-issue-49241.stderr
type-error-break-tail.rs
type-error-break-tail.stderr Tweak value suggestions in borrowck and hir_analysis 2024-04-09 23:37:13 +00:00
type-mismatch-multiple.rs
type-mismatch-multiple.stderr
type-mismatch-same-crate-name.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-mismatch-same-crate-name.stderr
type-mismatch.rs
type-mismatch.stderr
type-parameter-defaults-referencing-Self-ppaux.rs
type-parameter-defaults-referencing-Self-ppaux.stderr
type-parameter-defaults-referencing-Self.rs
type-parameter-defaults-referencing-Self.stderr
type-parameter-names.rs
type-parameter-names.stderr Note that type param is chosen by caller when suggesting return impl Trait 2024-03-16 23:20:42 +00:00
type-params-in-different-spaces-1.rs
type-params-in-different-spaces-1.stderr
type-params-in-different-spaces-2.rs
type-params-in-different-spaces-2.stderr
type-params-in-different-spaces-3.rs
type-params-in-different-spaces-3.stderr Note that type param is chosen by caller when suggesting return impl Trait 2024-03-16 23:20:42 +00:00
type-path-err-node-types.rs
type-path-err-node-types.stderr
type-recursive-box-shadowed.rs
type-recursive-box-shadowed.stderr
type-recursive.rs
type-recursive.stderr
type-shadow.rs
type-shadow.stderr
type-unsatisfiable.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
type-unsatisfiable.usage.stderr
verbose.normal.stderr don't elide shared parts of types in diagnostics when --verbose is passed 2023-12-24 16:47:18 -05:00
verbose.rs [AUTO-GENERATED] Migrate ui tests from // to //@ directives 2024-02-16 20:02:50 +00:00
verbose.verbose.stderr don't elide shared parts of types in diagnostics when --verbose is passed 2023-12-24 16:47:18 -05:00
wrong-call-return-type-due-to-generic-arg.rs
wrong-call-return-type-due-to-generic-arg.stderr