master
1export fn a() callconv(.naked) noreturn {
2 var x: u32 = 10;
3 _ = &x;
4
5 const y: u32 = x + 10;
6 _ = y;
7}
8
9export fn b() callconv(.naked) noreturn {
10 var x = @as(u32, 10);
11 _ = &x;
12
13 const y = x;
14 var z = y;
15 _ = &z;
16}
17
18export fn c() callconv(.naked) noreturn {
19 const Foo = struct {
20 y: u32,
21 };
22
23 var x: Foo = .{ .y = 10 };
24 _ = &x;
25}
26
27export fn d() callconv(.naked) noreturn {
28 const Foo = struct {
29 inline fn bar() void {
30 var x: u32 = 10;
31 _ = &x;
32 }
33 };
34
35 Foo.bar();
36}
37
38// error
39//
40// :2:5: error: local variable in naked function
41// :10:5: error: local variable in naked function
42// :23:5: error: local variable in naked function
43// :30:13: error: local variable in naked function
44// :35:12: note: called inline here