File tree Expand file tree Collapse file tree 3 files changed +2
-12
lines changed
compiler/src/dotty/tools/dotc/core
tests/explicit-nulls/flexible-unpickle Expand file tree Collapse file tree 3 files changed +2
-12
lines changed Original file line number Diff line number Diff line change @@ -58,9 +58,8 @@ object JavaNullInterop {
5858 // assert(sym.is(JavaDefined), "can only nullify java-defined members")
5959
6060 // Some special cases when nullifying the type
61- if isEnumValueDef || sym.name == nme.TYPE_ // Don't nullify the `TYPE` field in every class and Java enum instances
62- || sym.is(Flags .ModuleVal ) // Don't nullify Modules
63- then
61+ if isEnumValueDef || sym.name == nme.TYPE_ then
62+ // Don't nullify the `TYPE` field in every class and Java enum instances
6463 tp
6564 else if sym.name == nme.toString_ || sym.isConstructor || hasNotNullAnnot(sym) then
6665 // Don't nullify the return type of the `toString` method.
Original file line number Diff line number Diff line change 1- import unsafeNulls .Foo .*
2- import unsafeNulls .Unsafe_1
3-
41@ main
52def Flexible_2 () =
63 val s2 : String | Null = " foo"
Original file line number Diff line number Diff line change 1- package unsafeNulls
2-
31class Unsafe_1 {
42 def foo (s : String ): String = {
53 if (s == null ) then " nullString"
64 else s
75 }
86}
9-
10- object Foo {
11- def bar = " bar!"
12- }
You can’t perform that action at this time.
0 commit comments