const std = @import("std");
const builtin = @import("builtin");

pub fn main() !void {
    if (builtin.os.tag == .windows) return; // TODO: COFF seems to have a problem linking this
    if (!(builtin.os.tag == .linux and builtin.cpu.arch == .x86_64)) return; // TODO: I think I hit LLVM bugs on mips and powerpc and possible more archs

    const literal_max_bit_pattern: u65535 = [encoded data, 65537 characters];
    // Need to split this up because 65535 is not evenly divisible by 8.
    const Parts = packed struct(u65535) {
        first: u65528,
        last: u7,
    };
    const parts: Parts = @bitCast(literal_max_bit_pattern);
    for (@as([65528 / 8]u8, @bitCast(parts.first))) |byte|
        try std.testing.expect(byte == 0b1111_1111);
    try std.testing.expect(parts.last == 0b1111_111);
}

// run
// backend=stage2,llvm
// target=native
