diff options
author | Martin Odersky <odersky@gmail.com> | 2014-05-01 11:30:11 +0200 |
---|---|---|
committer | Dmitry Petrashko <dmitry.petrashko@gmail.com> | 2014-05-08 21:51:47 +0200 |
commit | 4ae473eff25335d2b6b0f5900eed55ffa5141d2a (patch) | |
tree | 6b3a120e9fcc98d45122dbae54a73ccacc1a1ca7 /src/dotty/tools/dotc/typer/ReTyper.scala | |
parent | 620b2f4435249cc651d31dbabcb3c902da3b160c (diff) | |
download | dotty-4ae473eff25335d2b6b0f5900eed55ffa5141d2a.tar.gz dotty-4ae473eff25335d2b6b0f5900eed55ffa5141d2a.tar.bz2 dotty-4ae473eff25335d2b6b0f5900eed55ffa5141d2a.zip |
Tightening of rules for explicit types for implicit defs
1) We now demand that all implicit defs have an implicit type, not
just class members. If we admitted implicit term members without
explicit types, the rules and algorithms for dteremining eligible
implicits would be greatly complicated (because there's always the
danger that inferring the type by typechecking the rhs causes a cyclic
reference).
2) We check for violations of this rule earlier, during type completion, in order
to avoid cyclic references happening before we do the check.
Diffstat (limited to 'src/dotty/tools/dotc/typer/ReTyper.scala')
-rw-r--r-- | src/dotty/tools/dotc/typer/ReTyper.scala | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/src/dotty/tools/dotc/typer/ReTyper.scala b/src/dotty/tools/dotc/typer/ReTyper.scala index 8d8134781..76817fd16 100644 --- a/src/dotty/tools/dotc/typer/ReTyper.scala +++ b/src/dotty/tools/dotc/typer/ReTyper.scala @@ -59,6 +59,4 @@ class ReTyper extends Typer { override def localTyper(sym: Symbol) = this override def index(trees: List[untpd.Tree])(implicit ctx: Context) = ctx - - override def checkImplicitTptNonEmpty(defTree: untpd.ValOrDefDef)(implicit ctx: Context): Unit = () }
\ No newline at end of file |