aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/transform/PostTyper.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2015-05-15 17:02:25 +0200
committerMartin Odersky <odersky@gmail.com>2015-05-15 17:05:25 +0200
commit6674b3563011a84e0389598573feb77cecb37cbc (patch)
treed253db5e4b8931dbb2b5bf770a622867788a5d5a /src/dotty/tools/dotc/transform/PostTyper.scala
parent49e537e10f572340e2d8f8ac632a5c05227b694f (diff)
downloaddotty-6674b3563011a84e0389598573feb77cecb37cbc.tar.gz
dotty-6674b3563011a84e0389598573feb77cecb37cbc.tar.bz2
dotty-6674b3563011a84e0389598573feb77cecb37cbc.zip
As i566 shows, it is possible to have a package as prefix, a package
object as owner and be followed by type arguments: reflect.classTag[T] expands to reflect.`package`.classTag[T]
Diffstat (limited to 'src/dotty/tools/dotc/transform/PostTyper.scala')
-rw-r--r--src/dotty/tools/dotc/transform/PostTyper.scala5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/dotty/tools/dotc/transform/PostTyper.scala b/src/dotty/tools/dotc/transform/PostTyper.scala
index 55270f233..a0670bca0 100644
--- a/src/dotty/tools/dotc/transform/PostTyper.scala
+++ b/src/dotty/tools/dotc/transform/PostTyper.scala
@@ -104,12 +104,11 @@ class PostTyper extends MacroTransform with IdentityDenotTransformer { thisTran
private def transformAnnots(tree: MemberDef)(implicit ctx: Context): Unit =
tree.symbol.transformAnnotations(transformAnnot)
- private def transformSelect(tree: Select, targs: List[Tree])(implicit ctx: Context) = {
+ private def transformSelect(tree: Select, targs: List[Tree])(implicit ctx: Context): Tree = {
val qual = tree.qualifier
qual.symbol.moduleClass.denot match {
case pkg: PackageClassDenotation if !tree.symbol.maybeOwner.is(Package) =>
- assert(targs.isEmpty)
- cpy.Select(tree)(qual select pkg.packageObj.symbol, tree.name)
+ transformSelect(cpy.Select(tree)(qual select pkg.packageObj.symbol, tree.name), targs)
case _ =>
superAcc.transformSelect(super.transform(tree), targs)
}