summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2007-07-02 13:44:29 +0000
committerMartin Odersky <odersky@gmail.com>2007-07-02 13:44:29 +0000
commit6f5102c26b0f96778810b2600c14aa05c8c1a64a (patch)
treecdc3799f79029da8d33e458cfb9d7f8f33642e1f
parent510f9833512173798008198c86d86d1f10a24e15 (diff)
downloadscala-6f5102c26b0f96778810b2600c14aa05c8c1a64a.tar.gz
scala-6f5102c26b0f96778810b2600c14aa05c8c1a64a.tar.bz2
scala-6f5102c26b0f96778810b2600c14aa05c8c1a64a.zip
fixed bug1181
-rw-r--r--src/compiler/scala/tools/nsc/ast/parser/Parsers.scala2
-rw-r--r--test/files/pos/bug1189.scala8
2 files changed, 1 insertions, 9 deletions
diff --git a/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala b/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala
index 5f0c0ee7ff..dc1bcd720e 100644
--- a/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala
+++ b/src/compiler/scala/tools/nsc/ast/parser/Parsers.scala
@@ -383,7 +383,7 @@ trait Parsers {
tree match {
case Ident(name) =>
ValDef(Modifiers(Flags.PARAM), name, TypeTree(), EmptyTree)
- case Typed(Ident(name), tpe) =>
+ case Typed(Ident(name), tpe) if (tpe.isType) =>
ValDef(Modifiers(Flags.PARAM), name, tpe, EmptyTree)
case _ =>
syntaxError(tree.pos, "not a legal formal parameter", false)
diff --git a/test/files/pos/bug1189.scala b/test/files/pos/bug1189.scala
deleted file mode 100644
index 97d2e4488c..0000000000
--- a/test/files/pos/bug1189.scala
+++ /dev/null
@@ -1,8 +0,0 @@
-object test extends Application {
- case class Cell[T](x: T)
- type U = Cell[T1] forSome { type T1 }
- def f[T](x: Any): U = x match { case y: Cell[_] => y }
-
- var x: U = Cell(1)
- println(x)
-}