diff options
author | schinz <schinz@epfl.ch> | 2005-05-19 12:53:44 +0000 |
---|---|---|
committer | schinz <schinz@epfl.ch> | 2005-05-19 12:53:44 +0000 |
commit | e67937da147a13d714e5c536be1ba2ac7327ef0e (patch) | |
tree | 1f309ed44c898b3acf5e257e74a15e1da6b15f08 /sources/scalac | |
parent | cb4fd037826cf84e0ffa817d315f6d02cad56954 (diff) | |
download | scala-e67937da147a13d714e5c536be1ba2ac7327ef0e.tar.gz scala-e67937da147a13d714e5c536be1ba2ac7327ef0e.tar.bz2 scala-e67937da147a13d714e5c536be1ba2ac7327ef0e.zip |
- bug fix: transform all isInstance/asInstance ...
- bug fix: transform all isInstance/asInstance calls, even those in
qualifiers of other such calls
Diffstat (limited to 'sources/scalac')
-rw-r--r-- | sources/scalac/transformer/TypesAsValuesPhase.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sources/scalac/transformer/TypesAsValuesPhase.java b/sources/scalac/transformer/TypesAsValuesPhase.java index 9d6bb9c5a9..52b84333fe 100644 --- a/sources/scalac/transformer/TypesAsValuesPhase.java +++ b/sources/scalac/transformer/TypesAsValuesPhase.java @@ -1324,12 +1324,13 @@ public class TypesAsValuesPhase extends Phase { case Apply(TypeApply(Tree fun, Tree[] targs), Tree[] vargs): Symbol funSym = fun.symbol(); if (funSym == defs.ANY_IS || funSym == defs.ANY_AS) { + assert vargs.length == 0; Symbol erasedSym = (funSym == defs.ANY_AS) ? defs.ANY_AS_ERASED : defs.ANY_IS_ERASED; return gen.mkApplyTV(tree.pos, gen.Select(fun.pos, - qualifierOf(fun), + transform(qualifierOf(fun)), erasedSym), targs, vargs); |