diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2021-07-13 23:20:51 +0200 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2021-07-15 18:49:47 +0200 |
| commit | 9ca69c51e76525e1e753588375036ea711f72df0 (patch) | |
| tree | 8ffc99b93a6a3287abc7d61fde5db094c8924253 /src | |
| parent | e3575cdad44e63f598b557ba3142675197875906 (diff) | |
| download | zig-9ca69c51e76525e1e753588375036ea711f72df0.tar.gz zig-9ca69c51e76525e1e753588375036ea711f72df0.zip | |
zld: error out if LTO is requested targeting Darwin
Diffstat (limited to 'src')
| -rw-r--r-- | src/Compilation.zig | 4 | ||||
| -rw-r--r-- | src/main.zig | 8 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/Compilation.zig b/src/Compilation.zig index 5146e757fa..6256e2551f 100644 --- a/src/Compilation.zig +++ b/src/Compilation.zig @@ -929,7 +929,9 @@ pub fn create(gpa: *Allocator, options: InitOptions) !*Compilation { if (!use_lld and !options.target.isDarwin()) return error.LtoUnavailableWithoutLld; break :blk explicit; - } else if (!use_lld and !options.target.isDarwin()) { + } else if (!use_lld) { + // TODO zig ld LTO support + // See https://github.com/ziglang/zig/issues/8680 break :blk false; } else if (options.c_source_files.len == 0) { break :blk false; diff --git a/src/main.zig b/src/main.zig index 9d515cc398..ae39b9c167 100644 --- a/src/main.zig +++ b/src/main.zig @@ -1648,7 +1648,13 @@ fn buildOutputType( if (use_lld) |opt| { if (opt and cross_target.isDarwin()) { - fatal("-fLLD requested with Mach-O object format. Only the self-hosted linker is supported for this target.", .{}); + fatal("LLD requested with Mach-O object format. Only the self-hosted linker is supported for this target.", .{}); + } + } + + if (want_lto) |opt| { + if (opt and cross_target.isDarwin()) { + fatal("LTO is not yet supported with the Mach-O object format. More details: https://github.com/ziglang/zig/issues/8680", .{}); } } |
