Skip to content

queue: allow non-trivially moveable types#118

Merged
timblechmann merged 1 commit intoboostorg:developfrom
praetorian20:develop
May 19, 2025
Merged

queue: allow non-trivially moveable types#118
timblechmann merged 1 commit intoboostorg:developfrom
praetorian20:develop

Conversation

@praetorian20
Copy link
Contributor

Restores the requirements prior to commit 6a70a65 which replaced boost::has_trivial_assign with std::is_trivially_assignable.

The latter trait requires both trivial copy and move assignment while the original only required trivial copy assignment. Since the lockfree queue doesn't require trivial move assignment, the requirement is being reverted back to the original.

Also updated the documentation to clarify only trivial copy assignment is needed.

Fixes #117

Restores the requirements prior to commit 6a70a65 which replaced
boost::has_trivial_assign with std::is_trivially_assignable.

The latter trait requires both trivial copy and move assignment while
the original only required trivial copy assignment. Since the lockfree
queue doesn't require trivial move assignment, the requirement is being
reverted back to the original.

Also updated the documentation to clarify only trivial copy assignment
is needed.

Fixes boostorg#117
@timblechmann
Copy link
Collaborator

@praetorian20, many thanks for the patch!

@timblechmann timblechmann merged commit 5813db1 into boostorg:develop May 19, 2025
41 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

lockfree::queue requires is_trivially_move_assignable in 1.87.0

2 participants