Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

merge stable #16276

Merged
merged 19 commits into from
Mar 1, 2024
Merged

merge stable #16276

merged 19 commits into from
Mar 1, 2024

Conversation

ibuclaw
Copy link
Member

@ibuclaw ibuclaw commented Mar 1, 2024

  • Fix Bugzilla 20802 - Link failure with writefln (Fix Bugzilla 20802 - Link failure with writefln #16200)
  • gha: Update cross-platform-actions to v0.23.0
  • Fix unknown module location in processSource diagnostics
  • Revert the removal of Expression.parens
  • Fix Bugzilla Issue 24371 - String array concatenation does not respect operator precedence
  • GHA: Switch to old Xcode as workaround for macOS-13 jobs
  • Fix Bugzilla 24402 - OSX: Linker warning: pointer not aligned at _OBJC_PROTOCOL$_Foo
  • Fix Bugzilla 24137 - Link failure on macOS with symbol count from symbol table and dynamic symbol table differ
  • Fix Bugzilla 20297 - Link warning: no platform load command found in object.o, assuming: macOS
  • Fix Bugzilla 23517 - dmd with -g flag fails to link on macOS with unaligned pointer
  • Fix Bugzilla 24401 - OSX: Linker error: GOT load reloc does not point to a movq instruction
  • Fix Bugzilla 22556 - Invalid GOT load reloc with -O on MacOS
  • Fix Bugzilla 21047 - Linker error: GOT load reloc does not point to a movq instruction
  • Fix Bugzilla 24399 - Link failure on MacOS with address=0x0 points to section(2) with no content
  • Fix Bugzilla 24407 - OSX: ld: Assertion failed: (slot < _sideTableBuffer.size()), function addAtom
  • Fix Bugzilla 24409 - DMD crash for CTFE in stompOverlappedFields (Fix Bugzilla 24409 - DMD crash for CTFE in stompOverlappedFields #16246)
  • Fix Bugzilla 24422 - ImportC: ICE: Segfault in cparseFunctionDefinition
  • bump VERSION to v2.107.1

tim-dlang and others added 19 commits February 19, 2024 06:35
The issue is caused by compiling druntime/phobos and the application
with different flags. The template instance for __switch_errorT is not
included in the build of druntime/phobos, because they are compiled
with -release. DMD will also not include it in an application compiled
without -release, because it assumes, that it is already in druntime.
See comment https://issues.dlang.org/show_bug.cgi?id=20802#c3 by Spoov.

The template instance for __switch_errorT is now always instantiated in
druntime, so it is part of the ABI of druntime.
Having this at the `Expression` level is useful to libdparse and will
also help fix this regression
https://issues.dlang.org/show_bug.cgi?id=24371 whose underlying issue is
that the lowering doesn't take parentheses into account.

This reverts the follwoing commits
- 6e604e2
- e60d027
- 71ffbe0
…t operator precedence

Rethink lowering logic to account for parentheses and operator
associativity.

Signed-off-by: Teodor Dutu <[email protected]>
…object.o, assuming: macOS

Co-authored-by: Jacob Carlborg <[email protected]>
@dlang-bot
Copy link
Contributor

Thanks for your pull request, @ibuclaw!

Bugzilla references

Auto-close Bugzilla Severity Description
20297 normal ld: warning: no platform load command found for macOS
20802 regression [REG2.088.0] Link failure with writefln
21047 normal Linker error: GOT load reloc does not point to a movq instruction
22556 normal Invalid GOT load reloc with -O on MacOS
23517 blocker dmd with -g flag fails to link on macOS with unaligned pointer
24137 major Link failure on macOS with symbol count from symbol table and dynamic symbol table differ
24371 regression [REG 2.104] String array concatenation does not respect operator precedence
24399 critical Link failure on MacOS with address=0x0 points to section(2) with no content in config_a68_4c3.o
24401 critical OSX: Linker error: GOT load reloc does not point to a movq instruction
24402 critical OSX: Linker warning: pointer not aligned at __OBJC_PROTOCOL_$_Foo
24407 critical OSX: ld: Assertion failed: (slot < _sideTableBuffer.size()), function addAtom
24409 normal DMD crash for CTFE in stompOverlappedFields
24422 critical ImportC: ICE: Segfault in cparseFunctionDefinition

Testing this PR locally

If you don't have a local development environment setup, you can use Digger to test this PR:

dub run digger -- build "master + dmd#16276"

@ibuclaw ibuclaw merged commit bb59a07 into dlang:master Mar 1, 2024
48 checks passed
@ibuclaw ibuclaw deleted the merge_stable branch March 1, 2024 23:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants