diff options
author | Enno Runne <enno@runne.net> | 2017-03-07 20:05:28 +0100 |
---|---|---|
committer | Enno Runne <enno@runne.net> | 2017-03-07 20:05:28 +0100 |
commit | 98465f930fe5d3f10401c454d6655da71243b923 (patch) | |
tree | 42888e27a553888a21628090e6aab562a96d8c83 /compiler/src/dotty/tools/dotc/typer | |
parent | c3ec6dfbdeadb2fc9e7ac191b4c1a4d6838e8a5b (diff) | |
download | dotty-98465f930fe5d3f10401c454d6655da71243b923.tar.gz dotty-98465f930fe5d3f10401c454d6655da71243b923.tar.bz2 dotty-98465f930fe5d3f10401c454d6655da71243b923.zip |
Analysis of overloaded or recursive is harder than expected
Fall-back to reporting "overloaded or recursive needs type".
Diffstat (limited to 'compiler/src/dotty/tools/dotc/typer')
-rw-r--r-- | compiler/src/dotty/tools/dotc/typer/ErrorReporting.scala | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/compiler/src/dotty/tools/dotc/typer/ErrorReporting.scala b/compiler/src/dotty/tools/dotc/typer/ErrorReporting.scala index 3a377bdc0..a1690955f 100644 --- a/compiler/src/dotty/tools/dotc/typer/ErrorReporting.scala +++ b/compiler/src/dotty/tools/dotc/typer/ErrorReporting.scala @@ -32,10 +32,7 @@ object ErrorReporting { if (cx.mode is Mode.InferringReturnType) { cx.tree match { case tree: untpd.DefDef if !tree.tpt.typeOpt.exists => - // TODO: analysis if tree is an overloaded method (or directly recursive) - val overloaded = true - if (overloaded) OverloadedMethodNeedsResultType(tree.name) - else RecursiveMethodNeedsResultType(tree.name) + OverloadedOrRecursiveMethodNeedsResultType(tree.name) case tree: untpd.ValDef if !tree.tpt.typeOpt.exists => RecursiveValueNeedsResultType(tree.name) case _ => |