diff options
author | Martin Odersky <odersky@gmail.com> | 2015-04-13 15:47:54 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2015-04-13 16:06:01 +0200 |
commit | 046376e48bd3c4a294cef239a6cc77a61b62bc6e (patch) | |
tree | d38a3d329da8ece65029b6167e55c62e39e38d2c /src/dotty/tools/dotc/Compiler.scala | |
parent | 04eea24326c3a42ad908fe45e204af41b880f2cd (diff) | |
download | dotty-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.scala | 3 |
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), |