diff options
Diffstat (limited to 'src/dotty/tools/dotc/core')
-rw-r--r-- | src/dotty/tools/dotc/core/Flags.scala | 3 | ||||
-rw-r--r-- | src/dotty/tools/dotc/core/TypeComparer.scala | 4 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/dotty/tools/dotc/core/Flags.scala b/src/dotty/tools/dotc/core/Flags.scala index 1477e7ab7..3a54340d8 100644 --- a/src/dotty/tools/dotc/core/Flags.scala +++ b/src/dotty/tools/dotc/core/Flags.scala @@ -456,6 +456,9 @@ object Flags { /** A Java interface */ final val JavaInterface = allOf(JavaDefined, Trait) + /** A Java companion object */ + final val JavaModule = allOf(JavaDefined, Module) + /** Labeled private[this] */ final val PrivateLocal = allOf(Private, Local) diff --git a/src/dotty/tools/dotc/core/TypeComparer.scala b/src/dotty/tools/dotc/core/TypeComparer.scala index b52824906..a4cbdfe25 100644 --- a/src/dotty/tools/dotc/core/TypeComparer.scala +++ b/src/dotty/tools/dotc/core/TypeComparer.scala @@ -135,6 +135,8 @@ class TypeComparer(implicit val ctx: Context) extends DotClass { case TypeBounds(_, hi) => isSubType(tp1, hi) case NoType => true } + case tp2: AnnotatedType => + isSubType(tp1, tp2.tpe) // todo: refine? case ErrorType => true case _ => @@ -155,6 +157,8 @@ class TypeComparer(implicit val ctx: Context) extends DotClass { case TypeBounds(lo, _) => isSubType(lo, tp2) case _ => true } + case tp1: AnnotatedType => + isSubType(tp1.tpe, tp2) case ErrorType => true case _ => |