[Issue 22942] Invalid section type / offset for newer XCode versions

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sun Mar 27 02:24:36 UTC 2022


https://issues.dlang.org/show_bug.cgi?id=22942

--- Comment #4 from Dlang Bot <dlang-bot at dlang.rocks> ---
dlang/dmd pull request #13892 "Merge stable into master" was merged into
master:

- 25b8666e690d6b50c59937040ae0f201ae3ef9d9 by MoonlightSentinel:
  CirrusCI: Temporarily use ldc instead of dmd for MacOs >= 12

  DMD releases cannot compile for XCode >= 13.3 because of issue 22942.

- d06857e5cf430a566b78264a1635149ce864ed88 by MoonlightSentinel:
  Fix 22942 - Check for S_TRHEAD_LOCAL_ZEROFILL alongside S_ZEROFILL

  The code generated an unexpected / invalid header for the `thread_bss`
  section marked as `S_TRHEAD_LOCAL_ZEROFILL`. The generated object file
  is rejected by ld included in newer XCode versions (>= 13.3).

  E.g.
  ```
  ld: section __DATA/__thread_bss has type zero-fill but non-zero file
      offset file '../generated/build.o' for architecture x86_64
  ```

  This patch changes the existing code to treat `S_TRHEAD_LOCAL_ZEROFILL`
  like `S_ZEROFILL` w.r.t. the section size.

https://github.com/dlang/dmd/pull/13892

--


More information about the Digitalmars-d-bugs mailing list