Skip to content

Commit be6a6ce

Browse files
committed
Make caps.{Capability, Classifier, Shareable, Control} non-experimental
These are all neccessary for boundary.Label
1 parent 207604b commit be6a6ce

File tree

3 files changed

+1
-10
lines changed

3 files changed

+1
-10
lines changed

compiler/src/dotty/tools/dotc/core/Definitions.scala

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2109,10 +2109,9 @@ class Definitions {
21092109
*/
21102110
@tu lazy val ccExperimental: Set[Symbol] = Set(
21112111
CapsModule, CapsModule.moduleClass, PureClass,
2112-
Caps_Capability, // TODO: Remove when Capability is stabilized
21132112
RequiresCapabilityAnnot,
21142113
captureRoot, Caps_CapSet, Caps_ContainsTrait, Caps_ContainsModule, Caps_ContainsModule.moduleClass, UseAnnot,
2115-
Caps_Mutable, Caps_Sharable, Caps_Control, Caps_Classifier, ConsumeAnnot,
2114+
Caps_Mutable/* , Caps_Sharable, Caps_Control, Caps_Classifier -- already stable*/, ConsumeAnnot,
21162115
CapsUnsafeModule, CapsUnsafeModule.moduleClass,
21172116
CapsInternalModule, CapsInternalModule.moduleClass,
21182117
RetainsAnnot, RetainsCapAnnot, RetainsByNameAnnot)

library/src/scala/caps/package.scala

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,12 @@ import annotation.{experimental, compileTimeOnly, retainsCap}
2222
* But even without capture checking, extending this trait can be useful for documenting the intended purpose
2323
* of a class.
2424
*/
25-
@experimental
2625
trait Capability extends Any
2726

2827
/** A marker trait for classifier capabilities that can appear in `.only`
2928
* qualifiers. Capability classes directly extending `Classifier` are treated
3029
* as classifier capbilities
3130
*/
32-
@experimental
3331
trait Classifier
3432

3533
/** The universal capture reference. */
@@ -43,13 +41,11 @@ trait Mutable extends Capability, Classifier
4341
/** Marker trait for capabilities that can be safely shared in a concurrent context.
4442
* During separation checking, shared capabilities are not taken into account.
4543
*/
46-
@experimental
4744
trait Sharable extends Capability, Classifier
4845

4946
/** Base trait for capabilities that capture some continuation or return point in
5047
* the stack. Examples are exceptions, labels, Async, CanThrow.
5148
*/
52-
@experimental
5349
trait Control extends Sharable, Classifier
5450

5551
/** Carrier trait for capture set type parameters */

tests/run-tasty-inspector/stdlibExperimentalDefinitions.scala

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,15 +32,11 @@ val experimentalDefinitionInLibrary = Set(
3232
"scala.annotation.retainsCap",
3333
"scala.Pure",
3434
"scala.caps.CapSet",
35-
"scala.caps.Capability",
36-
"scala.caps.Classifier",
3735
"scala.caps.Contains",
3836
"scala.caps.Contains$",
3937
"scala.caps.Contains$.containsImpl",
4038
"scala.caps.Exists",
4139
"scala.caps.Mutable",
42-
"scala.caps.Sharable",
43-
"scala.caps.Control",
4440
"scala.caps.consume",
4541
"scala.caps.internal",
4642
"scala.caps.internal$",

0 commit comments

Comments
 (0)