summaryrefslogtreecommitdiffstats
path: root/src/test/ui/macros/macro-first-set.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/macros/macro-first-set.rs')
-rw-r--r--src/test/ui/macros/macro-first-set.rs272
1 files changed, 0 insertions, 272 deletions
diff --git a/src/test/ui/macros/macro-first-set.rs b/src/test/ui/macros/macro-first-set.rs
deleted file mode 100644
index eeb1ddd84..000000000
--- a/src/test/ui/macros/macro-first-set.rs
+++ /dev/null
@@ -1,272 +0,0 @@
-// run-pass
-#![allow(unused_macro_rules)]
-
-//{{{ issue 40569 ==============================================================
-
-macro_rules! my_struct {
- ($(#[$meta:meta])* $ident:ident) => {
- $(#[$meta])* struct $ident;
- }
-}
-
-my_struct!(#[derive(Debug, PartialEq)] Foo40569);
-
-fn test_40569() {
- assert_eq!(Foo40569, Foo40569);
-}
-
-//}}}
-
-//{{{ issue 26444 ==============================================================
-
-macro_rules! foo_26444 {
- ($($beginning:ident),*; $middle:ident; $($end:ident),*) => {
- stringify!($($beginning,)* $middle $(,$end)*)
- }
-}
-
-fn test_26444() {
- assert_eq!("a, b, c, d, e", foo_26444!(a, b; c; d, e));
- assert_eq!("f", foo_26444!(; f ;));
-}
-
-macro_rules! pat_26444 {
- ($fname:ident $($arg:pat)* =) => {}
-}
-
-pat_26444!(foo 1 2 5...7 =);
-pat_26444!(bar Some(ref x) Ok(ref mut y) &(w, z) =);
-
-//}}}
-
-//{{{ issue 40984 ==============================================================
-
-macro_rules! thread_local_40984 {
- () => {};
- ($(#[$attr:meta])* $vis:vis static $name:ident: $t:ty = $init:expr; $($rest:tt)*) => {
- thread_local_40984!($($rest)*);
- };
- ($(#[$attr:meta])* $vis:vis static $name:ident: $t:ty = $init:expr) => {};
-}
-
-thread_local_40984! {
- // no docs
- #[allow(unused)]
- static FOO: i32 = 42;
- /// docs
- pub static BAR: String = String::from("bar");
-
- // look at these restrictions!!
- pub(crate) static BAZ: usize = 0;
- pub(in foo) static QUUX: usize = 0;
-}
-
-//}}}
-
-//{{{ issue 35650 ==============================================================
-
-macro_rules! size {
- ($ty:ty) => {
- std::mem::size_of::<$ty>()
- };
- ($size:tt) => {
- $size
- };
-}
-
-fn test_35650() {
- assert_eq!(size!(u64), 8);
- assert_eq!(size!(5), 5);
-}
-
-//}}}
-
-//{{{ issue 27832 ==============================================================
-
-macro_rules! m {
- ( $i:ident ) => ();
- ( $t:tt $j:tt ) => ();
-}
-
-m!(c);
-m!(t 9);
-m!(0 9);
-m!(struct);
-m!(struct Foo);
-
-macro_rules! m2 {
- ( $b:expr ) => ();
- ( $t:tt $u:tt ) => ();
-}
-
-m2!(3);
-m2!(1 2);
-m2!(_ 1);
-m2!(enum Foo);
-
-//}}}
-
-//{{{ issue 39964 ==============================================================
-
-macro_rules! foo_39964 {
- ($a:ident) => {};
- (_) => {};
-}
-
-foo_39964!(_);
-
-//}}}
-
-//{{{ issue 34030 ==============================================================
-
-macro_rules! foo_34030 {
- ($($t:ident),* /) => {};
-}
-
-foo_34030!(a, b/);
-foo_34030!(a/);
-foo_34030!(/);
-
-//}}}
-
-//{{{ issue 24189 ==============================================================
-
-macro_rules! foo_24189 {
- (
- pub enum $name:ident {
- $( #[$attr:meta] )* $var:ident
- }
- ) => {
- pub enum $name {
- $( #[$attr] )* $var
- }
- };
-}
-
-foo_24189! {
- pub enum Foo24189 {
- #[doc = "Bar"] Baz
- }
-}
-
-macro_rules! serializable {
- (
- $(#[$struct_meta:meta])*
- pub struct $name:ident {
- $(
- $(#[$field_meta:meta])*
- $field:ident: $type_:ty
- ),* ,
- }
- ) => {
- $(#[$struct_meta])*
- pub struct $name {
- $(
- $(#[$field_meta])*
- $field: $type_
- ),* ,
- }
- }
-}
-
-serializable! {
- #[allow(dead_code)]
- /// This is a test
- pub struct Tester {
- #[allow(dead_code)]
- name: String,
- }
-}
-
-macro_rules! foo_24189_c {
- ( $( > )* $x:ident ) => { };
-}
-foo_24189_c!( > a );
-
-fn test_24189() {
- let _ = Foo24189::Baz;
- let _ = Tester { name: "".to_owned() };
-}
-
-//}}}
-
-//{{{ issue 50903 ==============================================================
-
-macro_rules! foo_50903 {
- ($($lif:lifetime ,)* #) => {};
-}
-
-foo_50903!('a, 'b, #);
-foo_50903!('a, #);
-foo_50903!(#);
-
-//}}}
-
-//{{{ issue 51477 ==============================================================
-
-macro_rules! foo_51477 {
- ($lifetime:lifetime) => {
- "last token is lifetime"
- };
- ($other:tt) => {
- "last token is other"
- };
- ($first:tt $($rest:tt)*) => {
- foo_51477!($($rest)*)
- };
-}
-
-fn test_51477() {
- assert_eq!("last token is lifetime", foo_51477!('a));
- assert_eq!("last token is other", foo_51477!(@));
- assert_eq!("last token is lifetime", foo_51477!(@ {} 'a));
-}
-
-//}}}
-
-//{{{ some more tests ==========================================================
-
-macro_rules! test_block {
- (< $($b:block)* >) => {}
-}
-
-test_block!(<>);
-test_block!(<{}>);
-test_block!(<{1}{2}>);
-
-macro_rules! test_ty {
- ($($t:ty),* $(,)*) => {}
-}
-
-test_ty!();
-test_ty!(,);
-test_ty!(u8);
-test_ty!(u8,);
-
-macro_rules! test_path {
- ($($t:path),* $(,)*) => {}
-}
-
-test_path!();
-test_path!(,);
-test_path!(::std);
-test_path!(std::ops,);
-test_path!(any, super, super::super::self::path, X<Y>::Z<'a, T=U>);
-
-macro_rules! test_lifetime {
- (1. $($l:lifetime)* $($b:block)*) => {};
- (2. $($b:block)* $($l:lifetime)*) => {};
-}
-
-test_lifetime!(1. 'a 'b {} {});
-test_lifetime!(2. {} {} 'a 'b);
-
-//}}}
-
-fn main() {
- test_26444();
- test_40569();
- test_35650();
- test_24189();
- test_51477();
-}