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

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sun Mar 27 00:47:44 UTC 2022


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

Dlang Bot <dlang-bot at dlang.rocks> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #3 from Dlang Bot <dlang-bot at dlang.rocks> ---
dlang/dmd pull request #13890 "Fix 22942 - Check for S_TRHEAD_LOCAL_ZEROFILL
alongside S_ZEROFILL" was merged into stable:

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

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

- 08ff0600f4ddbc0cf285ee9e5633656183766f20 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/13890

--


More information about the Digitalmars-d-bugs mailing list