add workaround for #3190

master
Vexu 2019-11-26 21:36:57 +02:00
parent 128034481a
commit 798d05dd02
No known key found for this signature in database
GPG Key ID: 5AEABFCAFF5CD8D6
2 changed files with 6 additions and 2 deletions

View File

@ -58,7 +58,8 @@ pub fn link(comp: *Compilation) !void {
try ctx.args.append("lld");
if (comp.haveLibC()) {
ctx.libc = ctx.comp.override_libc orelse blk: {
// TODO https://github.com/ziglang/zig/issues/3190
var libc = ctx.comp.override_libc orelse blk: {
switch (comp.target) {
Target.Native => {
break :blk comp.zig_compiler.getNativeLibC() catch return error.LibCRequiredButNotProvidedOrFound;
@ -66,6 +67,7 @@ pub fn link(comp: *Compilation) !void {
else => return error.LibCRequiredButNotProvidedOrFound,
}
};
ctx.libc = libc;
}
try constructLinkerArgs(&ctx);

View File

@ -726,8 +726,10 @@ pub const Type = struct {
switch (key.alignment) {
.Abi => {},
.Override => |alignment| {
// TODO https://github.com/ziglang/zig/issues/3190
var align_spill = alignment;
const abi_align = try key.child_type.getAbiAlignment(comp);
if (abi_align == alignment) {
if (abi_align == align_spill) {
normal_key.alignment = .Abi;
}
},