master
1var global_var: i32 align(0) = undefined;
2
3export fn a() void {
4 _ = &global_var;
5}
6
7extern var extern_var: i32 align(0);
8
9export fn b() void {
10 _ = &extern_var;
11}
12
13export fn c() align(0) void {}
14
15export fn d() void {
16 _ = *align(0) fn () i32;
17}
18
19export fn e() void {
20 var local_var: i32 align(0) = undefined;
21 _ = &local_var;
22}
23
24export fn f() void {
25 _ = *align(0) i32;
26}
27
28export fn g() void {
29 _ = []align(0) i32;
30}
31
32export fn h() void {
33 _ = struct { field: i32 align(0) };
34}
35
36export fn i() void {
37 _ = union { field: i32 align(0) };
38}
39
40export fn j() void {
41 _ = @Struct(.auto, null, &.{"test"}, &.{u32}, &.{.{ .@"align" = 0 }});
42}
43
44export fn k() void {
45 _ = @Pointer(.one, .{ .@"align" = 0 }, u32, null);
46}
47
48// error
49//
50// :1:27: error: alignment must be >= 1
51// :7:34: error: alignment must be >= 1
52// :13:21: error: alignment must be >= 1
53// :16:16: error: alignment must be >= 1
54// :20:30: error: alignment must be >= 1
55// :25:16: error: alignment must be >= 1
56// :29:17: error: alignment must be >= 1
57// :33:35: error: alignment must be >= 1
58// :37:34: error: alignment must be >= 1
59// :41:51: error: alignment must be >= 1
60// :45:25: error: alignment must be >= 1