Conversation
Use `opOpAssign` directly instead, which is in the spec: > an instance method can still be called on an rvalue struct instance, even if the method is not const https://dlang.org/spec/struct.html#member-functions
Contributor
Author
|
Test failure seems unrelated: |
Contributor
Author
|
Thanks! |
jmh530
pushed a commit
to jmh530/mir-algorithm
that referenced
this pull request
Jan 8, 2026
Use `opOpAssign` directly instead, which is in the spec: > an instance method can still be called on an rvalue struct instance, even if the method is not const https://dlang.org/spec/struct.html#member-functions
jmh530
added a commit
to jmh530/mir-algorithm
that referenced
this pull request
Jan 8, 2026
This reverts commit b476262.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
I'm trying to make assigning to a struct rvalue an error, because often the assignment is silently thrown away:
dlang/dmd#21717 (comment)
That breaks some buildkite projects, including this one - so it will probably be a deprecation/error in an edition. This PR avoids breaking this project.
Use
opOpAssigndirectly instead, which is in the spec:https://dlang.org/spec/struct.html#member-functions
Alternatively, we could declare an lvalue for the temporary.