aboutsummaryrefslogtreecommitdiff
path: root/test/cases/compile_errors/invalid_struct_field.zig
blob: 7a3922dd1fcd25e7e48b0c45aa8fb9e469dac906 (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
const A = struct { x: i32 };
export fn f() void {
    var a: A = undefined;
    a.foo = 1;
    const y = a.bar;
    _ = y;
}
export fn g() void {
    var a: A = undefined;
    const y = a.bar;
    _ = &a;
    _ = y;
}
export fn e() void {
    const B = struct {
        fn f() void {}
    };
    const b: B = undefined;
    @import("std").debug.print("{}{}", .{ b.f, b.f });
}

// error
// backend=stage2
// target=native
//
// :4:7: error: no field named 'foo' in struct 'tmp.A'
// :1:11: note: struct declared here
// :10:17: error: no field named 'bar' in struct 'tmp.A'
// :1:11: note: struct declared here
// :19:45: error: no field named 'f' in struct 'tmp.e.B'
// :15:15: note: struct declared here