2018-09-11 12:57:53 -04:00
|
|
|
const std = @import("std");
|
|
|
|
|
|
2018-11-13 05:08:37 -08:00
|
|
|
const B = union(enum) {
|
2018-09-11 12:57:53 -04:00
|
|
|
D: u8,
|
|
|
|
|
E: u16,
|
|
|
|
|
};
|
|
|
|
|
|
2018-11-13 05:08:37 -08:00
|
|
|
const A = union(enum) {
|
2018-09-11 12:57:53 -04:00
|
|
|
B: B,
|
|
|
|
|
C: u8,
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
test "union that needs padding bytes inside an array" {
|
2019-06-09 19:24:24 -04:00
|
|
|
var as = [_]A{
|
2018-11-13 05:08:37 -08:00
|
|
|
A{ .B = B{ .D = 1 } },
|
|
|
|
|
A{ .B = B{ .D = 1 } },
|
2018-09-11 12:57:53 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const a = as[0].B;
|
2021-05-04 21:23:22 +03:00
|
|
|
try std.testing.expect(a.D == 1);
|
2018-09-11 12:57:53 -04:00
|
|
|
}
|