error[E0107]: function takes 1 generic argument but 2 generic arguments were supplied --> $DIR/issue_114151.rs:17:5 | LL | foo::<_, L>([(); L + 1 + L]); | ^^^ - help: remove this generic argument | | | expected 1 generic argument | note: function defined here, with 1 generic parameter: `N` --> $DIR/issue_114151.rs:4:4 | LL | fn foo( | ^^^ -------------- error[E0308]: mismatched types --> $DIR/issue_114151.rs:17:18 | LL | foo::<_, L>([(); L + 1 + L]); | ^^ expected `u8`, found `()` error: unconstrained generic constant --> $DIR/issue_114151.rs:17:22 | LL | foo::<_, L>([(); L + 1 + L]); | ^^^^^^^^^ | = help: try adding a `where` bound using this expression: `where [(); L + 1 + L]:` error: unconstrained generic constant --> $DIR/issue_114151.rs:17:17 | LL | foo::<_, L>([(); L + 1 + L]); | ----------- ^^^^^^^^^^^^^^^ | | | required by a bound introduced by this call | = help: try adding a `where` bound using this expression: `where [(); { { N } }]:` note: required by a bound in `foo` --> $DIR/issue_114151.rs:5:13 | LL | fn foo( | --- required by a bound in this function LL | _: [u8; { | _____________^ LL | | { LL | | N LL | | } LL | | }], | |_____^ required by this bound in `foo` error: unconstrained generic constant `{const expr}` --> $DIR/issue_114151.rs:17:5 | LL | foo::<_, L>([(); L + 1 + L]); | ^^^^^^^^^^^ error: aborting due to 5 previous errors Some errors have detailed explanations: E0107, E0308. For more information about an error, try `rustc --explain E0107`.