| Something other than a type or const parameter has been used when one was | |
| expected. | |
| Erroneous code example: | |
| ```compile_fail,E0799 | |
| fn bad1() -> impl Sized + use<main> {} | |
| fn bad2(x: ()) -> impl Sized + use<x> {} | |
| fn main() {} | |
| ``` | |
| In the given examples, for `bad1`, the name `main` corresponds to a function | |
| rather than a type or const parameter. In `bad2`, the name `x` corresponds to | |
| a function argument rather than a type or const parameter. | |
| Only type and const parameters, including `Self`, may be captured by | |
| `use<...>` precise capturing bounds. |