diff options
author | Burak Emir <emir@epfl.ch> | 2006-11-16 16:03:30 +0000 |
---|---|---|
committer | Burak Emir <emir@epfl.ch> | 2006-11-16 16:03:30 +0000 |
commit | 23c02cb584b8b0311aaba4f6675f5078d9dfd6d7 (patch) | |
tree | f38e9abeb7540d06fb22b6274f35ba4e842058c8 /src | |
parent | 9f54fe8bd04e9820cfd04e0ee18da12395269129 (diff) | |
download | scala-23c02cb584b8b0311aaba4f6675f5078d9dfd6d7.tar.gz scala-23c02cb584b8b0311aaba4f6675f5078d9dfd6d7.tar.bz2 scala-23c02cb584b8b0311aaba4f6675f5078d9dfd6d7.zip |
fix bug#825
Diffstat (limited to 'src')
-rw-r--r-- | src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala b/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala index d38c7e144a..083887dd69 100644 --- a/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala +++ b/src/compiler/scala/tools/nsc/transform/ExplicitOuter.scala @@ -387,8 +387,16 @@ abstract class ExplicitOuter extends InfoTransform with TransMatcher with Patter Console.println("transforming patmat with tidmark "+q+" ncases = "+cases.length) q } else null - if ((cases.length > 1) && (treeInfo.isDefaultCase(cases(0)))) - assert(false,"transforming too much, " + tid) + + cases match { + //if ((cases.length > 1) && ...(cases(0))) + //can't use treeInfo.isDefaultCase, because that diagnoses a Bind + case CaseDef(Ident(nme.WILDCARD), EmptyTree, _)::xs if !xs.isEmpty => + // a hack to detect when explicit outer does not work correctly + // still needed? + assert(false,"transforming too much, " + tid) + case _ => + } val nselector = transform(selector) assert(nselector.tpe =:= selector.tpe) |