SI-6840 fixes weird typing of quasiquote arguments

Previously quasiquote arguments were type checked against Any
which caused weird inference that made splicing of complex expressions
unusable:

   val l1 = List(q"foo")
   val l2 = List(q"bar")
   q"f(..${l1 ++ l2})" // argument type checked as Any instead of List[Tree]

This is fixed by forcing compiler to type check against type
variable which itself isn't used in any other way.
Merge pull request #3059 from densh/pull/si-6840

SI-6840 fixes weird typing of quasiquote arguments