Allow ExprLit expression macros to be used in patterns.
auto merge of #16891 : eddyb/rust/patlit-from-expr-macros, r=kballard

Enables any macros using `MacExpr` to be treated as patterns when
they produce a literal in the form `ExprLit` (e.g. `stringify!` or `line!`).

Fixes #16876.