about summary refs log tree commit diff
path: root/src/test/ui/const-generics/closing-args-token.rs
blob: a9b552ebed7a7f1df749a26dfd65c8d436b3f342 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// revisions: full min

#![cfg_attr(full, feature(const_generics))]
#![cfg_attr(full, allow(incomplete_features))]

struct S<const X: u32>;
struct T<const X: bool>;

fn bad_args_1() {
    S::<5 + 2 >> 7>;
    //~^ ERROR expressions must be enclosed in braces to be used as const generic arguments
    //~| ERROR comparison operators cannot be chained
}

fn bad_args_2() {
    S::<{ 5 + 2 } >> 7>;
    //~^ ERROR comparison operators cannot be chained
}

fn bad_args_3() {
    T::<0 >= 3>;
    //~^ ERROR expected expression, found `;`
}

fn bad_args_4() {
    let mut x = 0;
    T::<x >>= 2 > 0>;
    //~^ ERROR comparison operators cannot be chained
}

fn main() {}