Skip to content

Commit 0652676

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

File tree

3 files changed

+2
-10
lines changed

3 files changed

+2
-10
lines changed

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2112,8 +2112,8 @@ class Definitions {
21122112
*/
21132113
@tu lazy val ccExperimental: Set[Symbol] = Set(
21142114
CapsModule, CapsModule.moduleClass, PureClass,
2115-
Caps_Capability, // TODO: Remove when Capability is stabilized
2116-
Caps_Classifier, Caps_SharedCapability, Caps_Control, Caps_ExclusiveCapability, Caps_Mutable, Caps_Read,
2115+
/* Caps_Classifier, Caps_SharedCapability, Caps_Control, -- already stable */
2116+
Caps_ExclusiveCapability, Caps_Mutable, Caps_Read,
21172117
RequiresCapabilityAnnot,
21182118
captureRoot, Caps_CapSet, Caps_ContainsTrait, Caps_ContainsModule, Caps_ContainsModule.moduleClass,
21192119
ConsumeAnnot, UseAnnot, ReserveAnnot,

library/src/scala/caps/package.scala

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -24,14 +24,12 @@ import annotation.{experimental, compileTimeOnly, retainsCap}
2424
*
2525
* Capability has exactly two subtraits: Shared and Exclusive.
2626
*/
27-
@experimental
2827
sealed trait Capability extends Any
2928

3029
/** A marker trait for classifier capabilities that can appear in `.only`
3130
* qualifiers. Capability classes directly extending `Classifier` are treated
3231
* as classifier capbilities
3332
*/
34-
@experimental
3533
trait Classifier
3634

3735
/** The universal capture reference. */
@@ -41,7 +39,6 @@ object cap extends Capability
4139
/** Marker trait for capabilities that can be safely shared in a concurrent context.
4240
* During separation checking, shared capabilities are not taken into account.
4341
*/
44-
@experimental
4542
trait SharedCapability extends Capability, Classifier
4643

4744
@experimental
@@ -58,7 +55,6 @@ type Exclusive = ExclusiveCapability
5855
/** Base trait for capabilities that capture some continuation or return point in
5956
* the stack. Examples are exceptions, labels, Async, CanThrow.
6057
*/
61-
@experimental
6258
trait Control extends SharedCapability, Classifier
6359

6460
/** Marker trait for classes with methods that require an exclusive reference. */

tests/run-tasty-inspector/stdlibExperimentalDefinitions.scala

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,17 +32,13 @@ 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",
41-
"scala.caps.SharedCapability",
4239
"scala.caps.ExclusiveCapability",
4340
"scala.caps.Mutable",
4441
"scala.caps.Read",
45-
"scala.caps.Control",
4642
"scala.caps.consume",
4743
"scala.caps.internal",
4844
"scala.caps.internal$",

0 commit comments

Comments
 (0)