summaryrefslogtreecommitdiff
path: root/sources
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2004-04-08 15:13:56 +0000
committerMartin Odersky <odersky@gmail.com>2004-04-08 15:13:56 +0000
commit99ec3e8abcca88be3362e396d25f3bf2c22d6528 (patch)
tree5fd467630508d0d4c75fd97d04f29671225bf681 /sources
parent64d2fb73cd89afbb1df3976dda189ad0cc8a8d0a (diff)
downloadscala-99ec3e8abcca88be3362e396d25f3bf2c22d6528.tar.gz
scala-99ec3e8abcca88be3362e396d25f3bf2c22d6528.tar.bz2
scala-99ec3e8abcca88be3362e396d25f3bf2c22d6528.zip
*** empty log message ***
Diffstat (limited to 'sources')
-rw-r--r--sources/scala/tools/scalac/typechecker/Analyzer.scala4
1 files changed, 3 insertions, 1 deletions
diff --git a/sources/scala/tools/scalac/typechecker/Analyzer.scala b/sources/scala/tools/scalac/typechecker/Analyzer.scala
index 37b3ae2379..e9b45b6c3e 100644
--- a/sources/scala/tools/scalac/typechecker/Analyzer.scala
+++ b/sources/scala/tools/scalac/typechecker/Analyzer.scala
@@ -575,13 +575,14 @@ class Analyzer(global: scalac_Global, descr: AnalyzerPhase) extends Transformer(
val vapp = transform(
make.Apply(tree.pos, vexpr, NewArray.Tree(tree)), mode, pt);
if (v.symtype.isObjectType()) {
+ val tree1 = transform(tree.duplicate(), mode, pt);
gen.If(
gen.Apply(
gen.Select(
vexpr.duplicate(),
definitions.ANY_EQEQ),
NewArray.Tree(gen.mkNullLit(tree.pos))),
- gen.mkNullLit(tree.pos),
+ tree1,
vapp)
} else vapp
}
@@ -1649,6 +1650,7 @@ class Analyzer(global: scalac_Global, descr: AnalyzerPhase) extends Transformer(
if (v != null) {
qual = applyView(
v, qual.setType(qual.getType().singleDeref()), EXPRmode, Type.AnyType);
+ System.out.println("app view " + qual + ":" + qual.getType());//debug
sym = qual.getType().lookup(name);
assert(sym.kind != NONE);
} else {