aboutsummaryrefslogtreecommitdiff
path: root/tests/run/zero-arity-case-class.scala
diff options
context:
space:
mode:
Diffstat (limited to 'tests/run/zero-arity-case-class.scala')
-rw-r--r--tests/run/zero-arity-case-class.scala26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/run/zero-arity-case-class.scala b/tests/run/zero-arity-case-class.scala
new file mode 100644
index 000000000..de0ba4fe1
--- /dev/null
+++ b/tests/run/zero-arity-case-class.scala
@@ -0,0 +1,26 @@
+case class Foo()
+
+object Test {
+ def main(args: Array[String]): Unit = {
+ assert(Foo.unapply(Foo()) == true)
+
+ // unapply generate by scalac are `_ != null`,
+ // dotty returns true in all cases
+ assert(Foo.unapply(null) == true)
+
+ Foo() match {
+ case Foo() => ()
+ case _ => ???
+ }
+
+ Foo() match {
+ case _: Foo => ()
+ case _ => ???
+ }
+
+ (Foo(): Any) match {
+ case Foo() => ()
+ case _ => ???
+ }
+ }
+}