diff options
author | Denys Shabalin <denys.shabalin@typesafe.com> | 2014-02-10 14:29:59 +0100 |
---|---|---|
committer | Denys Shabalin <denys.shabalin@typesafe.com> | 2014-02-10 14:44:27 +0100 |
commit | 2b67f8b94f9e95c5fb7be0e6d6c4718a6e045ec4 (patch) | |
tree | 437aa34986ad2b060b5ef52533a7f8abf5b199e4 /test/files/scalacheck/quasiquotes/UnliftableProps.scala | |
parent | 08e51dfec50842253afb87cc5ae3c7400dc18ced (diff) | |
download | scala-2b67f8b94f9e95c5fb7be0e6d6c4718a6e045ec4.tar.gz scala-2b67f8b94f9e95c5fb7be0e6d6c4718a6e045ec4.tar.bz2 scala-2b67f8b94f9e95c5fb7be0e6d6c4718a6e045ec4.zip |
Make handling of tuples more consistent in quasi-quotes
On one hand we know that q"($expr)" is the same as q"$expr". On the
other if we wrap it into a list and splice as q"(..$expr)" we get a
Tuple1 constructor call which is inconsistent.
This pull request fixes this inconsistency by making q"(..$expr)" being
equivalent q"(${expr.head})" for single-element list.
We also add support for matching of expressions as single-element tuples
(similarly to blocks) and remove liftables and unliftables for Tuple1
(which aren't clearly defined any longer due to q"(foo)" == q"foo"
invariant).
Diffstat (limited to 'test/files/scalacheck/quasiquotes/UnliftableProps.scala')
-rw-r--r-- | test/files/scalacheck/quasiquotes/UnliftableProps.scala | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/test/files/scalacheck/quasiquotes/UnliftableProps.scala b/test/files/scalacheck/quasiquotes/UnliftableProps.scala index 8b827c98ff..4e996c90d7 100644 --- a/test/files/scalacheck/quasiquotes/UnliftableProps.scala +++ b/test/files/scalacheck/quasiquotes/UnliftableProps.scala @@ -111,8 +111,6 @@ object UnliftableProps extends QuasiquoteProperties("unliftable") { } property("unlift tuple") = test { - // fails due to SI-8045 - // val q"${t1: Tuple1[Int]}" = q"_root_.scala.Tuple1(1)" val q"${t2: (Int, Int)}" = q"(1, 2)" val q"${t3: (Int, Int, Int)}" = q"(1, 2, 3)" val q"${t4: (Int, Int, Int, Int)}" = q"(1, 2, 3, 4)" |