diff options
author | Burak Emir <emir@epfl.ch> | 2006-06-19 03:17:18 +0000 |
---|---|---|
committer | Burak Emir <emir@epfl.ch> | 2006-06-19 03:17:18 +0000 |
commit | 001ce2371bb9f2812c8ab5cda3faf8e21b548b8a (patch) | |
tree | ce2a2a8352fce35208cea9eff7505ad957b6ee10 /src/compiler | |
parent | 77b063b003a58a7d88bf0c49e5fdb718acfb157f (diff) | |
download | scala-001ce2371bb9f2812c8ab5cda3faf8e21b548b8a.tar.gz scala-001ce2371bb9f2812c8ab5cda3faf8e21b548b8a.tar.bz2 scala-001ce2371bb9f2812c8ab5cda3faf8e21b548b8a.zip |
proper handling of array(xs@_*)
Diffstat (limited to 'src/compiler')
-rw-r--r-- | src/compiler/scala/tools/nsc/matching/TransMatcher.scala | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/matching/TransMatcher.scala b/src/compiler/scala/tools/nsc/matching/TransMatcher.scala index 898d82c28e..54187e02f8 100644 --- a/src/compiler/scala/tools/nsc/matching/TransMatcher.scala +++ b/src/compiler/scala/tools/nsc/matching/TransMatcher.scala @@ -221,8 +221,11 @@ with RightTracers { //Console.println(pat); //Console.println(pat.tpe); //Console.println(b.tpe); - b.symbol.setInfo(pat2.tpe); - b.setType(pat2.tpe); + val tpe1:Type = pat2.tpe.widen.baseType( definitions.SeqClass ).typeArgs(0); + + val tpe = appliedType(definitions.SeqClass.typeConstructor, List(tpe1)) + b.symbol.setInfo(tpe); + b.setType(tpe); val res = copy.Bind(b, id, wc); //Console.println("====>"); //Console.println(res); |