-
Notifications
You must be signed in to change notification settings - Fork 14
Open
Labels
designDesign of the library systems as a whole, such as conceptsDesign of the library systems as a whole, such as concepts
Milestone
Description
We want to stabilize numerics, which come with Option. But not stabilize iterators and tuples yet which are found in the Option API.
We need to mark those methods as unstable somehow so they won't be used by accident?
[[deprecated]]
?- A marker
unstable_fn
type? [[clang::annotate]]
?
We also want to mark concepts (e.g. NeverValueField) or types (e.g. Iterator) as unstable.
[[clang::annotate("sus::unstable")]]
seems like the most clear choice except it wouldn't do anything. We'd need to just say you can't use them, and we can write a clang-tidy pass that errors on their use?
The use of a clang-only attribute is unfortunate. Not sure how to address this in a cross-compiler way. This would be enough for some projects like Chromium.
Metadata
Metadata
Assignees
Labels
designDesign of the library systems as a whole, such as conceptsDesign of the library systems as a whole, such as concepts