This should take `&[@ast::Pat]` instead of `&Vec`