You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
SI-8420 don't crash on unquoting of non-liftable native type
Previously quasiquote's type-based dispatch failed to handle situation
where unquotee's type is native but non-liftable and was used to splice
with non-zero cardinality.
property("SI-8420: don't crash on splicing of non-unliftable native type (1)") = fails(
176
+
"Can't unquote List[reflect.runtime.universe.Symbol] with .., consider omitting the dots or providing an implicit instance of Liftable[reflect.runtime.universe.Symbol]",
177
+
"""
178
+
val l: List[Symbol] = Nil
179
+
q"f(..$l)"
180
+
""")
181
+
182
+
property("SI-8420: don't crash on splicing of non-unliftable native type (2)") = fails(
183
+
"Can't unquote List[reflect.runtime.universe.FlagSet] with .., consider omitting the dots or providing an implicit instance of Liftable[reflect.runtime.universe.FlagSet]",
184
+
"""
185
+
val l: List[FlagSet] = Nil
186
+
q"f(..$l)"
187
+
""")
188
+
189
+
property("SI-8420: don't crash on splicing of non-unliftable native type (3)") = fails(
190
+
"Can't unquote List[reflect.runtime.universe.Modifiers] with .., consider omitting the dots or providing an implicit instance of Liftable[reflect.runtime.universe.Modifiers]",
191
+
"""
192
+
val l: List[Modifiers] = Nil
193
+
q"f(..$l)"
194
+
""")
195
+
175
196
// // Make sure a nice error is reported in this case
176
197
// { import Flag._; val mods = NoMods; q"lazy $mods val x: Int" }
0 commit comments