-
Notifications
You must be signed in to change notification settings - Fork 13.6k
Closed
Closed
Copy link
Labels
A-docsArea: Documentation for any part of the project, including the compiler, standard library, and toolsArea: Documentation for any part of the project, including the compiler, standard library, and toolsC-enhancementCategory: An issue proposing an enhancement or a PR with one.Category: An issue proposing an enhancement or a PR with one.P-mediumMedium priorityMedium priorityT-libs-apiRelevant to the library API team, which will review and decide on the PR/issue.Relevant to the library API team, which will review and decide on the PR/issue.
Description
A number of atomic operations such as AtomicUsize::compare_exchange are simply missing on some platforms such as thumbv6m-none-eabi. The methods are behind this condition:
#[cfg(target_has_atomic = "cas")]
It's understandable that these methods aren't available on platforms that don't support compare-and-swap in hardware. However the documentation doesn't mention that at all, which might lead to people assuming that the functionality is available on all platforms. I think the documentation should clearly mention which parts of libcore may be unavailable depending on the platform.
diodesign
Metadata
Metadata
Assignees
Labels
A-docsArea: Documentation for any part of the project, including the compiler, standard library, and toolsArea: Documentation for any part of the project, including the compiler, standard library, and toolsC-enhancementCategory: An issue proposing an enhancement or a PR with one.Category: An issue proposing an enhancement or a PR with one.P-mediumMedium priorityMedium priorityT-libs-apiRelevant to the library API team, which will review and decide on the PR/issue.Relevant to the library API team, which will review and decide on the PR/issue.