blob: 98b408daa022de8351b14b01ee1f730e4cf36f40 (
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
32
33
34
35
36
37
38
39
40
41
42
43
|
// In rustc_typeck::check::expr::no_such_field_err we recursively
// look in subfields for the field. This recursive search is limited
// in depth for compile-time reasons and to avoid infinite recursion
// in case of cycles. This file tests that the limit in the recursion
// depth is enforced.
struct Foo {
first: Bar,
second: u32,
third: u32,
}
struct Bar {
bar: C,
}
struct C {
c: D,
}
struct D {
test: E,
}
struct E {
e: F,
}
struct F {
f: u32,
}
fn main() {
let f = F { f: 6 };
let e = E { e: f };
let d = D { test: e };
let c = C { c: d };
let bar = Bar { bar: c };
let fooer = Foo { first: bar, second: 4, third: 5 };
let test = fooer.f;
//~^ ERROR no field
}
|