aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Petrashko <dmitry.petrashko@gmail.com>2014-10-11 08:42:32 +0200
committerDmitry Petrashko <dmitry.petrashko@gmail.com>2014-10-11 08:44:51 +0200
commitc0da421ea2f7b63cc081224a025c8f102030be7b (patch)
tree01ee103e0d4df5ebfc040b903fce51946b725f73
parent9ab1568cd5854dd9dd3800f3d2f05866fcb26613 (diff)
downloaddotty-c0da421ea2f7b63cc081224a025c8f102030be7b.tar.gz
dotty-c0da421ea2f7b63cc081224a025c8f102030be7b.tar.bz2
dotty-c0da421ea2f7b63cc081224a025c8f102030be7b.zip
After-rebase fix: weaken owner-chain restriction.
Allow to skip labels.
-rw-r--r--src/dotty/tools/dotc/transform/TreeChecker.scala2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/transform/TreeChecker.scala b/src/dotty/tools/dotc/transform/TreeChecker.scala
index 5412b66b8..46886afb6 100644
--- a/src/dotty/tools/dotc/transform/TreeChecker.scala
+++ b/src/dotty/tools/dotc/transform/TreeChecker.scala
@@ -98,7 +98,7 @@ class TreeChecker {
private def checkOwner(tree: untpd.Tree)(implicit ctx: Context): Unit = {
def ownerMatches(symOwner: Symbol, ctxOwner: Symbol): Boolean =
symOwner == ctxOwner ||
- ctxOwner.isWeakOwner && !(ctxOwner is Method | Lazy | Mutable) &&
+ ctxOwner.isWeakOwner && (!(ctxOwner is Method | Lazy | Mutable) || (ctxOwner is Label)) &&
ownerMatches(symOwner, ctxOwner.owner)
if(!ownerMatches(tree.symbol.owner, ctx.owner)) {
assert(ownerMatches(tree.symbol.owner, ctx.owner),