Create a D file, eg:
----
// test.d
void foo(){}
----
Compile:
$ dmd -c test.d -oftest.o
Use otool:
$ otool -I test.o
(that's a capital i if in case of the font being bad).
The output will be something like:
----
test.o:
indirect symbol table offset is past end of file
----
An object file as outputted by gcc or clang does not display the same issue. After linking the D version does not either. Changing backend/machobj.c:994 to use foffset -1 fixes the issue and does not seem to cause any side effects, given my complete lack of knowledge about the file format I thought I better report this for a proper fix.
Comment #1 by ben.james.jones — 2019-11-26T23:38:05Z
This doesn't seem to be reproducible anymore (tested on macos 10.15.1). Should probably be closed.
Comment #2 by pro.mathias.lang — 2020-09-28T02:00:44Z
Tested on Mac OSX 10.15 too, and can't reproduce. Tested a few other approaches and couldn't trigger the message with `otools -I` so closing as WORKSFORME.