File tree 2 files changed +7
-16
lines changed
compiler/src/dotty/tools/dotc
2 files changed +7
-16
lines changed Original file line number Diff line number Diff line change @@ -23,7 +23,6 @@ object Feature:
23
23
private val genericNumberLiterals = experimental(" genericNumberLiterals" )
24
24
val scala2macros = experimental(" macros" )
25
25
26
- val mode = experimental(" mode" )
27
26
val dependent = experimental(" dependent" )
28
27
val erasedDefinitions = experimental(" erasedDefinitions" )
29
28
val symbolLiterals = deprecated(" symbolLiterals" )
@@ -35,21 +34,10 @@ object Feature:
35
34
val into = experimental(" into" )
36
35
val relaxedExtensionImports = experimental(" relaxedExtensionImports" )
37
36
38
- // TODO compute this list
39
- // TODO remove features that do not enable experimental mode
40
- val experimentalAutoEnableFeatures : List [TermName ] = List (
41
- mode,
42
- namedTypeArguments,
43
- genericNumberLiterals,
44
- erasedDefinitions,
45
- fewerBraces,
46
- saferExceptions,
47
- clauseInterleaving,
48
- pureFunctions,
49
- captureChecking,
50
- into,
51
- relaxedExtensionImports,
52
- )
37
+ def experimentalAutoEnableFeatures (using Context ): List [TermName ] =
38
+ defn.languageExperimentalFeatures
39
+ .map(sym => experimental(sym.name.asTermName))
40
+ .filterNot(_ == captureChecking) // TODO is this correct?
53
41
54
42
val globalOnlyImports : Set [TermName ] = Set (pureFunctions, captureChecking)
55
43
Original file line number Diff line number Diff line change @@ -2013,6 +2013,9 @@ class Definitions {
2013
2013
CapabilityAnnot , RequiresCapabilityAnnot ,
2014
2014
RetainsAnnot , RetainsCapAnnot , RetainsByNameAnnot )
2015
2015
2016
+ @ tu lazy val languageExperimentalFeatures : List [Symbol ] =
2017
+ LanguageExperimentalModule .moduleClass.info.decls.toList.filter(_.isAllOf(Lazy | Module ))
2018
+
2016
2019
// ----- primitive value class machinery ------------------------------------------
2017
2020
2018
2021
class PerRun [T ](generate : Context ?=> T ) {
You can’t perform that action at this time.
0 commit comments