aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/typer/Typer.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2014-08-30 13:02:56 +0200
committerMartin Odersky <odersky@gmail.com>2014-08-30 13:02:56 +0200
commit4041c5d590f78323d640c6eec7e370a37a01c416 (patch)
tree15e33ffb26e1bfd4c47842670dee696c582322bf /src/dotty/tools/dotc/typer/Typer.scala
parent5362969b55cc73c22ea959d1960e3696a801c469 (diff)
downloaddotty-4041c5d590f78323d640c6eec7e370a37a01c416.tar.gz
dotty-4041c5d590f78323d640c6eec7e370a37a01c416.tar.bz2
dotty-4041c5d590f78323d640c6eec7e370a37a01c416.zip
Ensure that after erasure all types are erased.
Defines a predicate isErasedTypes and checks that all tree types and their widened underlying types are erased.
Diffstat (limited to 'src/dotty/tools/dotc/typer/Typer.scala')
-rw-r--r--src/dotty/tools/dotc/typer/Typer.scala2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/typer/Typer.scala b/src/dotty/tools/dotc/typer/Typer.scala
index 89cf0b055..f21528da0 100644
--- a/src/dotty/tools/dotc/typer/Typer.scala
+++ b/src/dotty/tools/dotc/typer/Typer.scala
@@ -834,7 +834,7 @@ class Typer extends Namer with TypeAssigner with Applications with Implicits wit
if (tree.isType) typedType(tree)(superCtx)
else {
val result = typedExpr(tree)(superCtx)
- if ((cls is Trait) && result.tpe.classSymbol.isRealClass)
+ if ((cls is Trait) && result.tpe.classSymbol.isRealClass && !ctx.isAfterTyper)
ctx.error(s"trait may not call constructor of ${result.tpe.classSymbol}", tree.pos)
result
}