aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/typer/ErrorReporting.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2013-10-10 12:31:59 +0200
committerMartin Odersky <odersky@gmail.com>2013-10-10 12:31:59 +0200
commitd13fa248d5c53b165ab4f927099d0e25303ef39a (patch)
treeebb509625a45ebb9b07b0b31430b2d460e0b2418 /src/dotty/tools/dotc/typer/ErrorReporting.scala
parentf703e4d9c006a119250e1b0202712fe3e09521b4 (diff)
downloaddotty-d13fa248d5c53b165ab4f927099d0e25303ef39a.tar.gz
dotty-d13fa248d5c53b165ab4f927099d0e25303ef39a.tar.bz2
dotty-d13fa248d5c53b165ab4f927099d0e25303ef39a.zip
Added disambiguation for reported messages.
Added method disambiguate which disambiguates any string-returning operation. Disambiguation is done by adding owners and qualifiers each symbol has a unique string representation.
Diffstat (limited to 'src/dotty/tools/dotc/typer/ErrorReporting.scala')
-rw-r--r--src/dotty/tools/dotc/typer/ErrorReporting.scala3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/typer/ErrorReporting.scala b/src/dotty/tools/dotc/typer/ErrorReporting.scala
index 314ef9899..16f994e90 100644
--- a/src/dotty/tools/dotc/typer/ErrorReporting.scala
+++ b/src/dotty/tools/dotc/typer/ErrorReporting.scala
@@ -9,6 +9,7 @@ import Types._, Inferencing._, Contexts._, Decorators._, Denotations._, Symbols.
import Applications._, Implicits._
import util.Positions._
import printing.Showable
+import printing.Disambiguation.disambiguated
import reporting.Reporter.SuppressedMessage
object ErrorReporting {
@@ -67,7 +68,7 @@ object ErrorReporting {
errorTree(tree, typeMismatchStr(tree.tpe, pt) + implicitFailure.postscript)
}
- def typeMismatchStr(found: Type, expected: Type) = {
+ def typeMismatchStr(found: Type, expected: Type) = disambiguated { implicit ctx =>
val (typerStateStr, explanationStr) =
if (ctx.settings.explaintypes.value) {
val nestedCtx = ctx.fresh.withTypeComparerFn(new ExplainingTypeComparer(_))