aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/rust/compile/invalid_label_name.rs
blob: 66e40a620e0992b06b043657ea1239948faefe88 (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
// { dg-additional-options "-frust-name-resolution-2.0" }
pub fn function() {
    'continue: loop {
        // { dg-error "invalid label name .'continue." "" { target *-*-* } .-1 }
        break 'extern;
        // { dg-error "invalid label name .'extern." "" { target *-*-* } .-1 }
        // { dg-error "use of undeclared label .'extern." "" { target *-*-* } .-2 }
    }

    'break: loop {
        // { dg-error "invalid label name .'break." "" { target *-*-* } .-1 }
        break 'for;
        // { dg-error "invalid label name .'for." "" { target *-*-* } .-1 }
        // { dg-error "use of undeclared label .'for." "" { target *-*-* } .-2 }
    }

    'crate: loop {
        // { dg-error "invalid label name .'crate." "" { target *-*-* } .-1 }
        break 'loop;
        // { dg-error "invalid label name .'loop." "" { target *-*-* } .-1 }
        // { dg-error "use of undeclared label .'loop." "" { target *-*-* } .-2 }
    }

    'a: loop {
        break 'a;
    }
}