error: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
  --> $DIR/macro-or-patterns-back-compat.rs:10:21
   |
LL | macro_rules! foo { ($x:pat | $y:pat) => {} }
   |                     ^^^^^^ help: use pat_param to preserve semantics: `$x:pat_param`
   |
note: the lint level is defined here
  --> $DIR/macro-or-patterns-back-compat.rs:4:9
   |
LL | #![deny(rust_2021_incompatible_or_patterns)]
   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/or-patterns-macro-rules.html>

error: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
  --> $DIR/macro-or-patterns-back-compat.rs:13:23
   |
LL | macro_rules! bar { ($($x:pat)+ | $($y:pat)+) => {} }
   |                       ^^^^^^ help: use pat_param to preserve semantics: `$x:pat_param`
   |
   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/or-patterns-macro-rules.html>

error: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
  --> $DIR/macro-or-patterns-back-compat.rs:19:21
   |
LL | macro_rules! ogg { ($x:pat | $y:pat_param) => {} }
   |                     ^^^^^^ help: use pat_param to preserve semantics: `$x:pat_param`
   |
   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/or-patterns-macro-rules.html>

error: the meaning of the `pat` fragment specifier is changing in Rust 2021, which may affect this macro
  --> $DIR/macro-or-patterns-back-compat.rs:23:26
   |
LL |     ( $expr:expr , $( $( $pat:pat )|+ => $expr_arm:expr ),+ ) => {
   |                          ^^^^^^^^ help: use pat_param to preserve semantics: `$pat:pat_param`
   |
   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/or-patterns-macro-rules.html>

error: aborting due to 4 previous errors

