Make float128 a trivially copyable type #636
Merged
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.
Closes #635.
Opted to go for trivially copyable and not fully trivial as otherwise we'd have to make the
constexpr float128_backend() noexcept
constructor trivial but I expect we'd like to keep zero initialisation for the data memberm_value
we're wrapping even when using default initialisation. In any case, I never needed the type to be trivial, only trivially copyable, so I'm happy if you are?Code snippet to print type traits and limits: https://godbolt.org/z/ddsj16M7W. I'm not sure we need everything in there, I just copied the original snippet and added a trivially copyable check, but feel free to edit it to your liking and we can then amend the website. :)