## Keyboard shortcuts

Press `←` or `→` to navigate between chapters

Press `S` or `/` to search in the book

Press `?` to show this help

Press `Esc` to hide this help

# Error code E0632

#### Note: this error code is no longer emitted by the compiler.

An explicit generic argument was provided when calling a function that uses `impl Trait` in argument position.

Erroneous code example:

    fn foo<T: Copy>(a: T, b: impl Clone) {}

    foo::<i32>(0i32, "abc".to_string());

Either all generic arguments should be inferred at the call site, or the function definition should use an explicit generic type parameter instead of `impl Trait`. Example:

    #![allow(unused)]
    fn main() {
    fn foo<T: Copy>(a: T, b: impl Clone) {}
    fn bar<T: Copy, U: Clone>(a: T, b: U) {}

    foo(0i32, "abc".to_string());

    bar::<i32, String>(0i32, "abc".to_string());
    bar::<_, _>(0i32, "abc".to_string());
    bar(0i32, "abc".to_string());
    }