summaryrefslogtreecommitdiffstats
path: root/tests/ui/error-codes/E0401.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'tests/ui/error-codes/E0401.stderr')
-rw-r--r--tests/ui/error-codes/E0401.stderr70
1 files changed, 70 insertions, 0 deletions
diff --git a/tests/ui/error-codes/E0401.stderr b/tests/ui/error-codes/E0401.stderr
new file mode 100644
index 000000000..fa4b91cac
--- /dev/null
+++ b/tests/ui/error-codes/E0401.stderr
@@ -0,0 +1,70 @@
+error[E0401]: can't use generic parameters from outer function
+ --> $DIR/E0401.rs:4:39
+ |
+LL | fn foo<T>(x: T) {
+ | - type parameter from outer function
+LL | fn bfnr<U, V: Baz<U>, W: Fn()>(y: T) {
+ | - ^ use of generic parameter from outer function
+ | |
+ | help: try using a local generic parameter instead: `T,`
+
+error[E0401]: can't use generic parameters from outer function
+ --> $DIR/E0401.rs:9:16
+ |
+LL | fn foo<T>(x: T) {
+ | - type parameter from outer function
+...
+LL | fn baz<U,
+ | - help: try using a local generic parameter instead: `T,`
+...
+LL | (y: T) {
+ | ^ use of generic parameter from outer function
+
+error[E0401]: can't use generic parameters from outer function
+ --> $DIR/E0401.rs:24:25
+ |
+LL | impl<T> Iterator for A<T> {
+ | ---- `Self` type implicitly declared here, by this `impl`
+...
+LL | fn helper(sel: &Self) -> u8 {
+ | ^^^^
+ | |
+ | use of generic parameter from outer function
+ | use a type here instead
+
+error[E0282]: type annotations needed
+ --> $DIR/E0401.rs:11:5
+ |
+LL | bfnr(x);
+ | ^^^^ cannot infer type of the type parameter `U` declared on the function `bfnr`
+ |
+help: consider specifying the generic arguments
+ |
+LL | bfnr::<U, V, W>(x);
+ | +++++++++++
+
+error[E0283]: type annotations needed
+ --> $DIR/E0401.rs:11:5
+ |
+LL | bfnr(x);
+ | ^^^^ cannot infer type of the type parameter `W` declared on the function `bfnr`
+ |
+ = note: multiple `impl`s satisfying `_: Fn<()>` found in the following crates: `alloc`, `core`:
+ - impl<A, F> Fn<A> for &F
+ where A: Tuple, F: Fn<A>, F: ?Sized;
+ - impl<Args, F, A> Fn<Args> for Box<F, A>
+ where Args: Tuple, F: Fn<Args>, A: Allocator, F: ?Sized;
+note: required by a bound in `bfnr`
+ --> $DIR/E0401.rs:4:30
+ |
+LL | fn bfnr<U, V: Baz<U>, W: Fn()>(y: T) {
+ | ^^^^ required by this bound in `bfnr`
+help: consider specifying the generic arguments
+ |
+LL | bfnr::<U, V, W>(x);
+ | +++++++++++
+
+error: aborting due to 5 previous errors
+
+Some errors have detailed explanations: E0282, E0283, E0401.
+For more information about an error, try `rustc --explain E0282`.