#zig build-obj {
--name test -fno-emit-bin
-Mroot=test.zig
#}

#write test.zig {
var global_var: i32 align(0) = undefined;

export fn a() void {
    _ = &global_var;
}

extern var extern_var: i32 align(0);

export fn b() void {
    _ = &extern_var;
}

export fn c() align(0) void {}

export fn d() void {
    _ = *align(0) fn () i32;
}

export fn e() void {
    var local_var: i32 align(0) = undefined;
    _ = &local_var;
}

export fn f() void {
    _ = *align(0) i32;
}

export fn g() void {
    _ = []align(0) i32;
}

export fn h() void {
    _ = @as(struct { field: i32 align(0) }, undefined);
}

export fn i() void {
    _ = @as(union { field: i32 align(0) }, undefined);
}

export fn j() void {
    _ = @Struct(.auto, null, &.{"test"}, &.{u32}, &.{.{ .@"align" = 0 }});
}

export fn k() void {
    _ = @Pointer(.one, .{ .@"align" = 0 }, u32, null);
}
#}
#update
#check errors {
test.zig:1:27: error: alignment must be >= 1
test.zig:7:34: error: alignment must be >= 1
test.zig:13:21: error: alignment must be >= 1
test.zig:16:16: error: alignment must be >= 1
test.zig:20:30: error: alignment must be >= 1
test.zig:25:16: error: alignment must be >= 1
test.zig:29:17: error: alignment must be >= 1
test.zig:33:39: error: alignment must be >= 1
test.zig:37:38: error: alignment must be >= 1
test.zig:41:51: error: alignment must be >= 1
test.zig:45:25: error: alignment must be >= 1
#}
