@@ -630,10 +630,11 @@ class SepCheck(checker: CheckCaptures.CheckerAPI) extends tpd.TreeTraverser:
630630 .dropWhile(_._3.isEmpty)
631631 .nextOption
632632 .getOrElse((" " , current, globalOverlap))
633+ val alsoStr = if next == prevRefs && nextRel == prevRel then " also " else " "
633634 report.error(
634635 em """ Separation failure in ${role.description} $tpe.
635636 |One part, $part , $nextRel ${CaptureSet (next)}.
636- |A previous part $prevStr $prevRel ${CaptureSet (prevRefs)}.
637+ |A previous part $prevStr $alsoStr$ prevRel ${CaptureSet (prevRefs)}.
637638 |The two sets overlap at ${CaptureSet (overlap)}. """ ,
638639 pos)
639640
@@ -642,7 +643,7 @@ class SepCheck(checker: CheckCaptures.CheckerAPI) extends tpd.TreeTraverser:
642643 val partHidden = prune(partRefs.hidden.footprint, tpe, role).deduct(partFootprint)
643644
644645 checkSep(footprint, partHidden, identity, " references" , " hides" )
645- checkSep(hiddenSet, partHidden, _.hidden, " also hides" , " hides" )
646+ checkSep(hiddenSet, partHidden, _.hidden, " hides" , " hides" )
646647 checkSep(hiddenSet, partFootprint, _.hidden, " hides" , " references" )
647648
648649 footprint ++= partFootprint
0 commit comments