Skip to content

Commit 5bf2bed

Browse files
committed
Rename annotation to StableNull and update test
1 parent c735f7c commit 5bf2bed

File tree

5 files changed

+11
-9
lines changed

5 files changed

+11
-9
lines changed

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1095,7 +1095,7 @@ class Definitions {
10951095
@tu lazy val RetainsByNameAnnot: ClassSymbol = requiredClass("scala.annotation.retainsByName")
10961096
@tu lazy val PublicInBinaryAnnot: ClassSymbol = requiredClass("scala.annotation.publicInBinary")
10971097
@tu lazy val WitnessNamesAnnot: ClassSymbol = requiredClass("scala.annotation.internal.WitnessNames")
1098-
@tu lazy val NullTrackableAnnot: ClassSymbol = requiredClass("scala.annotation.nullTrackable")
1098+
@tu lazy val StableNullAnnot: ClassSymbol = requiredClass("scala.annotation.stableNull")
10991099

11001100
@tu lazy val JavaRepeatableAnnot: ClassSymbol = requiredClass("java.lang.annotation.Repeatable")
11011101

compiler/src/dotty/tools/dotc/typer/Nullables.scala

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -189,14 +189,14 @@ object Nullables:
189189
def isTracked(ref: TermRef)(using Context) = // true
190190
val sym = ref.symbol
191191

192-
def isNullTrackableField: Boolean =
192+
def isNullStableField: Boolean =
193193
ref.prefix.isStable
194194
&& sym.isField
195-
&& sym.hasAnnotation(defn.NullTrackableAnnot)
195+
&& sym.hasAnnotation(defn.StableNullAnnot)
196196

197197
// println(s"isTracked: $ref, usedOutOfOrder = ${ref.usedOutOfOrder}, isStable = ${ref.isStable}, span = ${ref.symbol.span}, assignmentSpans = ${ctx.compilationUnit.assignmentSpans.get(ref.symbol.span.start)}")
198198
ref.isStable
199-
|| isNullTrackableField
199+
|| isNullStableField
200200
|| { val unit = ctx.compilationUnit
201201
!ref.usedOutOfOrder
202202
&& sym.span.exists

library/src/scala/annotation/nullTrackable.scala renamed to library/src/scala/annotation/stableNull.scala

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ package scala.annotation
77
* prefix is a stable path.
88
* See `tests/explicit-nulls/pos/force-track-var-fields.scala` for an example.
99
*/
10-
final class nullTrackable extends StaticAnnotation
10+
private[scala] final class stableNull extends StaticAnnotation

project/Build.scala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1191,7 +1191,7 @@ object Build {
11911191
file(s"${baseDirectory.value}/src/scala/annotation/init.scala"),
11921192
file(s"${baseDirectory.value}/src/scala/annotation/unroll.scala"),
11931193
file(s"${baseDirectory.value}/src/scala/annotation/targetName.scala"),
1194-
file(s"${baseDirectory.value}/src/scala/annotation/nullTrackable.scala"),
1194+
file(s"${baseDirectory.value}/src/scala/annotation/stableNull.scala"),
11951195
file(s"${baseDirectory.value}/src/scala/deriving/Mirror.scala"),
11961196
file(s"${baseDirectory.value}/src/scala/compiletime/package.scala"),
11971197
file(s"${baseDirectory.value}/src/scala/quoted/Type.scala"),
@@ -1327,7 +1327,7 @@ object Build {
13271327
file(s"${baseDirectory.value}/src/scala/annotation/init.scala"),
13281328
file(s"${baseDirectory.value}/src/scala/annotation/unroll.scala"),
13291329
file(s"${baseDirectory.value}/src/scala/annotation/targetName.scala"),
1330-
file(s"${baseDirectory.value}/src/scala/annotation/nullTrackable.scala"),
1330+
file(s"${baseDirectory.value}/src/scala/annotation/stableNull.scala"),
13311331
file(s"${baseDirectory.value}/src/scala/deriving/Mirror.scala"),
13321332
file(s"${baseDirectory.value}/src/scala/compiletime/package.scala"),
13331333
file(s"${baseDirectory.value}/src/scala/quoted/Type.scala"),

tests/explicit-nulls/pos/force-track-var-fields.scala

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
1-
import scala.annotation.nullTrackable
1+
package scala
2+
3+
import scala.annotation.stableNull
24

35
class A:
4-
@nullTrackable var s: String | Null = null
6+
@stableNull var s: String | Null = null
57
def getS: String =
68
if s == null then s = ""
79
s

0 commit comments

Comments
 (0)