I made the incorrect assumption that ,(unpack x) was the Fennel equivalent to (unquote-splicing x) in other Lisps. Instead, the compiler complains about needing an even number of pattern/body pairs. After quite a bit of debugging I found that the unpack expression here was only including the first element of the list. from fennel#246
I think the lints that detect suspicious unpack calls should also detect ,(unpack <...>)
forms.