aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/Compiler.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2015-04-13 15:47:54 +0200
committerMartin Odersky <odersky@gmail.com>2015-04-13 16:06:01 +0200
commit046376e48bd3c4a294cef239a6cc77a61b62bc6e (patch)
treed38a3d329da8ece65029b6167e55c62e39e38d2c /src/dotty/tools/dotc/Compiler.scala
parent04eea24326c3a42ad908fe45e204af41b880f2cd (diff)
downloaddotty-046376e48bd3c4a294cef239a6cc77a61b62bc6e.tar.gz
dotty-046376e48bd3c4a294cef239a6cc77a61b62bc6e.tar.bz2
dotty-046376e48bd3c4a294cef239a6cc77a61b62bc6e.zip
Added phase to check `New` nodes for instantiability.
- Abstract classes cannot be instantiated (exceptions: parent news and Java annotations) - Instantiateed class must conform to its self type.
Diffstat (limited to 'src/dotty/tools/dotc/Compiler.scala')
-rw-r--r--src/dotty/tools/dotc/Compiler.scala3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/Compiler.scala b/src/dotty/tools/dotc/Compiler.scala
index 25a4c578b..c67fb124a 100644
--- a/src/dotty/tools/dotc/Compiler.scala
+++ b/src/dotty/tools/dotc/Compiler.scala
@@ -6,7 +6,7 @@ import Contexts._
import Periods._
import Symbols._
import Scopes._
-import typer.{FrontEnd, Typer, Mode, ImportInfo, RefChecks}
+import typer.{FrontEnd, Typer, Mode, ImportInfo, RefChecks, InstChecks}
import reporting.ConsoleReporter
import dotty.tools.dotc.core.Phases.Phase
import dotty.tools.dotc.transform._
@@ -38,6 +38,7 @@ class Compiler {
def phases: List[List[Phase]] =
List(
List(new FrontEnd),
+ List(new InstChecks),
List(new FirstTransform,
new SyntheticMethods),
List(new SuperAccessors),