// Check that qualified paths with type parameters
// fail during type checking and not during parsing

struct S;

trait Tr {
    type A;
}

impl Tr for S {
    type A = S;
}

impl S {
    fn f<T>() {}
}

fn main() {
    match 10 {
        <S as Tr>::A::f::<u8> => {}
        //~^ ERROR expected unit struct, unit variant or constant, found associated function
        0 ..= <S as Tr>::A::f::<u8> => {}
        //~^ ERROR only `char` and numeric types are allowed in range
    }
}
