diff options
author | Martin Odersky <odersky@gmail.com> | 2016-02-18 14:07:03 +0100 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2016-02-20 10:19:56 +0100 |
commit | e4989b3cc13f70d8316790e309b5d3b27317d80e (patch) | |
tree | f0e2492607d221323585924a003cb57ab665c54e /src/dotty/tools/dotc/core/Definitions.scala | |
parent | f6391c780ce7472352b60da9fdd7ec8d7496a0ea (diff) | |
download | dotty-e4989b3cc13f70d8316790e309b5d3b27317d80e.tar.gz dotty-e4989b3cc13f70d8316790e309b5d3b27317d80e.tar.bz2 dotty-e4989b3cc13f70d8316790e309b5d3b27317d80e.zip |
Synthesize classTags in Typer.
Now diagnoses missing ClassTags of abstract types
as implicit failures.
Also: Simpler API of tpd.clsOf.
Diffstat (limited to 'src/dotty/tools/dotc/core/Definitions.scala')
-rw-r--r-- | src/dotty/tools/dotc/core/Definitions.scala | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/dotty/tools/dotc/core/Definitions.scala b/src/dotty/tools/dotc/core/Definitions.scala index c5d42a472..188a00fc2 100644 --- a/src/dotty/tools/dotc/core/Definitions.scala +++ b/src/dotty/tools/dotc/core/Definitions.scala @@ -419,6 +419,9 @@ class Definitions { lazy val LanguageModuleRef = ctx.requiredModule("dotty.language") def LanguageModuleClass(implicit ctx: Context) = LanguageModuleRef.symbol.moduleClass.asClass lazy val NonLocalReturnControlType: TypeRef = ctx.requiredClassRef("scala.runtime.NonLocalReturnControl") + lazy val ClassTagType = ctx.requiredClassRef("scala.reflect.ClassTag") + def ClassTagClass(implicit ctx: Context) = ClassTagType.symbol.asClass + def ClassTagModule(implicit ctx: Context) = ClassTagClass.companionModule // Annotation base classes lazy val AnnotationType = ctx.requiredClassRef("scala.annotation.Annotation") |