| ... | @@ -702,9 +702,9 @@ pub fn flushModule(self: *MachO, comp: *Compilation, prog_node: *std.Progress.No | ... | @@ -702,9 +702,9 @@ pub fn flushModule(self: *MachO, comp: *Compilation, prog_node: *std.Progress.No |
| 702 | if (self.dyld_stub_binder_index == null) { | 702 | if (self.dyld_stub_binder_index == null) { |
| 703 | self.dyld_stub_binder_index = try self.addUndefined("dyld_stub_binder", .add_got); | 703 | self.dyld_stub_binder_index = try self.addUndefined("dyld_stub_binder", .add_got); |
| 704 | } | 704 | } |
| 705 | // if (!self.base.options.single_threaded) { | 705 | if (!self.base.options.single_threaded) { |
| 706 | // _ = try self.addUndefined("_tlv_bootstrap", .none); | 706 | _ = try self.addUndefined("__tlv_bootstrap", .none); |
| 707 | // } | 707 | } |
| 708 | | 708 | |
| 709 | try self.createMhExecuteHeaderSymbol(); | 709 | try self.createMhExecuteHeaderSymbol(); |
| 710 | | 710 | |
| ... | @@ -713,6 +713,12 @@ pub fn flushModule(self: *MachO, comp: *Compilation, prog_node: *std.Progress.No | ... | @@ -713,6 +713,12 @@ pub fn flushModule(self: *MachO, comp: *Compilation, prog_node: *std.Progress.No |
| 713 | try self.resolveSymbolsInDylibs(&actions); | 713 | try self.resolveSymbolsInDylibs(&actions); |
| 714 | | 714 | |
| 715 | if (self.unresolved.count() > 0) { | 715 | if (self.unresolved.count() > 0) { |
| | 716 | for (self.unresolved.keys()) |index| { |
| | 717 | // TODO: convert into compiler errors. |
| | 718 | const global = self.globals.items[index]; |
| | 719 | const sym_name = self.getSymbolName(global); |
| | 720 | log.err("undefined symbol reference '{s}'", .{sym_name}); |
| | 721 | } |
| 716 | return error.UndefinedSymbolReference; | 722 | return error.UndefinedSymbolReference; |
| 717 | } | 723 | } |
| 718 | | 724 | |