| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:29:20 |
| | |
| LL | fn foo(a: usize, b: usize) -> usize { a } |
| | ----------------------------------- function `foo` defined here |
| ... |
| LL | let _: usize = foo; |
| | ----- ^^^ expected `usize`, found fn item |
| | | |
| | expected due to this |
| | |
| = note: expected type `usize` |
| found fn item `fn(usize, usize) -> usize {foo}` |
| help: use parentheses to call this function |
| | |
| LL | let _: usize = foo(/* usize */, /* usize */); |
| | ++++++++++++++++++++++++++ |
| |
| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:30:16 |
| | |
| LL | struct S(usize, usize); |
| | -------- `S` defines a struct constructor here, which should be called |
| ... |
| LL | let _: S = S; |
| | - ^ expected `S`, found struct constructor |
| | | |
| | expected due to this |
| | |
| = note: expected struct `S` |
| found struct constructor `fn(usize, usize) -> S {S}` |
| help: use parentheses to construct this tuple struct |
| | |
| LL | let _: S = S(/* usize */, /* usize */); |
| | ++++++++++++++++++++++++++ |
| |
| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:31:20 |
| | |
| LL | fn bar() -> usize { 42 } |
| | ----------------- function `bar` defined here |
| ... |
| LL | let _: usize = bar; |
| | ----- ^^^ expected `usize`, found fn item |
| | | |
| | expected due to this |
| | |
| = note: expected type `usize` |
| found fn item `fn() -> usize {bar}` |
| help: use parentheses to call this function |
| | |
| LL | let _: usize = bar(); |
| | ++ |
| |
| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:32:16 |
| | |
| LL | struct V(); |
| | -------- `V` defines a struct constructor here, which should be called |
| ... |
| LL | let _: V = V; |
| | - ^ expected `V`, found struct constructor |
| | | |
| | expected due to this |
| | |
| = note: expected struct `V` |
| found struct constructor `fn() -> V {V}` |
| help: use parentheses to construct this tuple struct |
| | |
| LL | let _: V = V(); |
| | ++ |
| |
| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:33:20 |
| | |
| LL | fn baz(x: usize, y: usize) -> usize { x } |
| | ----------------------------------- associated function `baz` defined here |
| ... |
| LL | let _: usize = T::baz; |
| | ----- ^^^^^^ expected `usize`, found fn item |
| | | |
| | expected due to this |
| | |
| = note: expected type `usize` |
| found fn item `fn(usize, usize) -> usize {<_ as T>::baz}` |
| help: use parentheses to call this associated function |
| | |
| LL | let _: usize = T::baz(/* usize */, /* usize */); |
| | ++++++++++++++++++++++++++ |
| |
| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:34:20 |
| | |
| LL | fn bat(x: usize) -> usize { 42 } |
| | ------------------------- associated function `bat` defined here |
| ... |
| LL | let _: usize = T::bat; |
| | ----- ^^^^^^ expected `usize`, found fn item |
| | | |
| | expected due to this |
| | |
| = note: expected type `usize` |
| found fn item `fn(usize) -> usize {<_ as T>::bat}` |
| help: use parentheses to call this associated function |
| | |
| LL | let _: usize = T::bat(/* usize */); |
| | +++++++++++++ |
| |
| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:35:16 |
| | |
| LL | A(usize), |
| | - `A` defines an enum variant constructor here, which should be called |
| ... |
| LL | let _: E = E::A; |
| | - ^^^^ expected `E`, found enum constructor |
| | | |
| | expected due to this |
| | |
| = note: expected enum `E` |
| found enum constructor `fn(usize) -> E {E::A}` |
| help: use parentheses to construct this tuple variant |
| | |
| LL | let _: E = E::A(/* usize */); |
| | +++++++++++++ |
| |
| error[E0533]: expected value, found struct variant `E::B` |
| --> $DIR/fn-or-tuple-struct-without-args.rs:36:16 |
| | |
| LL | let _: E = E::B; |
| | ^^^^ not a value |
| | |
| help: you might have meant to create a new value of the struct |
| | |
| LL | let _: E = E::B { a: /* value */ }; |
| | ++++++++++++++++++ |
| |
| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:37:20 |
| | |
| LL | fn baz(x: usize, y: usize) -> usize { x } |
| | ----------------------------------- associated function `baz` defined here |
| ... |
| LL | let _: usize = X::baz; |
| | ----- ^^^^^^ expected `usize`, found fn item |
| | | |
| | expected due to this |
| | |
| = note: expected type `usize` |
| found fn item `fn(usize, usize) -> usize {<X as T>::baz}` |
| help: use parentheses to call this associated function |
| | |
| LL | let _: usize = X::baz(/* usize */, /* usize */); |
| | ++++++++++++++++++++++++++ |
| |
| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:38:20 |
| | |
| LL | fn bat(x: usize) -> usize { 42 } |
| | ------------------------- associated function `bat` defined here |
| ... |
| LL | let _: usize = X::bat; |
| | ----- ^^^^^^ expected `usize`, found fn item |
| | | |
| | expected due to this |
| | |
| = note: expected type `usize` |
| found fn item `fn(usize) -> usize {<X as T>::bat}` |
| help: use parentheses to call this associated function |
| | |
| LL | let _: usize = X::bat(/* usize */); |
| | +++++++++++++ |
| |
| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:39:20 |
| | |
| LL | fn bax(x: usize) -> usize { 42 } |
| | ------------------------- associated function `bax` defined here |
| ... |
| LL | let _: usize = X::bax; |
| | ----- ^^^^^^ expected `usize`, found fn item |
| | | |
| | expected due to this |
| | |
| = note: expected type `usize` |
| found fn item `fn(usize) -> usize {<X as T>::bax}` |
| help: use parentheses to call this associated function |
| | |
| LL | let _: usize = X::bax(/* usize */); |
| | +++++++++++++ |
| |
| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:40:20 |
| | |
| LL | fn bach(x: usize) -> usize; |
| | --------------------------- associated function `bach` defined here |
| ... |
| LL | let _: usize = X::bach; |
| | ----- ^^^^^^^ expected `usize`, found fn item |
| | | |
| | expected due to this |
| | |
| = note: expected type `usize` |
| found fn item `fn(usize) -> usize {<X as T>::bach}` |
| help: use parentheses to call this associated function |
| | |
| LL | let _: usize = X::bach(/* usize */); |
| | +++++++++++++ |
| |
| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:41:20 |
| | |
| LL | fn ban(&self) -> usize { 42 } |
| | ---------------------- method `ban` defined here |
| ... |
| LL | let _: usize = X::ban; |
| | ----- ^^^^^^ expected `usize`, found fn item |
| | | |
| | expected due to this |
| | |
| = note: expected type `usize` |
| found fn item `for<'a> fn(&'a X) -> usize {<X as T>::ban}` |
| help: use parentheses to call this method |
| | |
| LL | let _: usize = X::ban(/* &X */); |
| | ++++++++++ |
| |
| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:42:20 |
| | |
| LL | fn bal(&self) -> usize; |
| | ----------------------- method `bal` defined here |
| ... |
| LL | let _: usize = X::bal; |
| | ----- ^^^^^^ expected `usize`, found fn item |
| | | |
| | expected due to this |
| | |
| = note: expected type `usize` |
| found fn item `for<'a> fn(&'a X) -> usize {<X as T>::bal}` |
| help: use parentheses to call this method |
| | |
| LL | let _: usize = X::bal(/* &X */); |
| | ++++++++++ |
| |
| error[E0615]: attempted to take value of method `ban` on type `X` |
| --> $DIR/fn-or-tuple-struct-without-args.rs:43:22 |
| | |
| LL | let _: usize = X.ban; |
| | ^^^ method, not a field |
| | |
| help: use parentheses to call the method |
| | |
| LL | let _: usize = X.ban(); |
| | ++ |
| |
| error[E0615]: attempted to take value of method `bal` on type `X` |
| --> $DIR/fn-or-tuple-struct-without-args.rs:44:22 |
| | |
| LL | let _: usize = X.bal; |
| | ^^^ method, not a field |
| | |
| help: use parentheses to call the method |
| | |
| LL | let _: usize = X.bal(); |
| | ++ |
| |
| error[E0308]: mismatched types |
| --> $DIR/fn-or-tuple-struct-without-args.rs:46:20 |
| | |
| LL | let closure = || 42; |
| | -- the found closure |
| LL | let _: usize = closure; |
| | ----- ^^^^^^^ expected `usize`, found closure |
| | | |
| | expected due to this |
| | |
| = note: expected type `usize` |
| found closure `{closure@$DIR/fn-or-tuple-struct-without-args.rs:45:19: 45:21}` |
| help: use parentheses to call this closure |
| | |
| LL | let _: usize = closure(); |
| | ++ |
| |
| error: aborting due to 17 previous errors |
| |
| Some errors have detailed explanations: E0308, E0533, E0615. |
| For more information about an error, try `rustc --explain E0308`. |