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

d-bugmail at puremagic.com d-bugmail at puremagic.com
Sat Mar 26 16:41:44 UTC 2022


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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |pull

--- Comment #1 from Dlang Bot <dlang-bot at dlang.rocks> ---
@MoonlightSentinel updated dlang/dmd pull request #13890 "[Ignore] Debug
failures for OSX on Cirrus" fixing this issue:

- CirrusCI: Use ldc instead of dmd for MacOs >= 12

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

- 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