blob: 02d93238dd6435497b797b9939c5b31bce5305f4 [file] [log] [blame]
// pp-exact
#![feature(box_syntax)]
#![feature(rustc_attrs)]
#![feature(stmt_expr_attributes)]
fn main() { }
fn _0() {
#[rustc_dummy]
foo();
}
fn _1() {
#[rustc_dummy]
unsafe {
// code
}
}
fn _2() {
#[rustc_dummy]
{ foo(); }
{
#![rustc_dummy]
foo()
}
}
fn _3() {
#[rustc_dummy]
match () { _ => { } }
}
fn _4() {
#[rustc_dummy]
match () {
#![rustc_dummy]
_ => (),
}
let _ =
#[rustc_dummy] match () {
#![rustc_dummy]
() => (),
};
}
fn _5() {
#[rustc_dummy]
let x = 1;
let x = #[rustc_dummy] 1;
let y = ();
let z = ();
foo3(x, #[rustc_dummy] y, z);
qux(3 + #[rustc_dummy] 2);
}
fn _6() {
#[rustc_dummy]
[#![rustc_dummy] 1, 2, 3];
let _ = #[rustc_dummy] [#![rustc_dummy] 1, 2, 3];
#[rustc_dummy]
[#![rustc_dummy] 1; 4];
let _ = #[rustc_dummy] [#![rustc_dummy] 1; 4];
}
struct Foo {
data: (),
}
struct Bar(());
fn _7() {
#[rustc_dummy]
Foo{#![rustc_dummy] data: (),};
let _ = #[rustc_dummy] Foo{#![rustc_dummy] data: (),};
}
fn _8() {
#[rustc_dummy]
(#![rustc_dummy] );
#[rustc_dummy]
(#![rustc_dummy] 0);
#[rustc_dummy]
(#![rustc_dummy] 0,);
#[rustc_dummy]
(#![rustc_dummy] 0, 1);
}
fn _9() {
macro_rules! stmt_mac { () => { let _ = () ; } }
#[rustc_dummy]
stmt_mac!();
#[rustc_dummy]
stmt_mac! { };
#[rustc_dummy]
stmt_mac![];
#[rustc_dummy]
stmt_mac! { }
let _ = ();
}
macro_rules! expr_mac { () => { () } }
fn _10() {
let _ = #[rustc_dummy] expr_mac!();
let _ = #[rustc_dummy] expr_mac![];
let _ = #[rustc_dummy] expr_mac! { };
}
fn _11() {
let _ = #[rustc_dummy] box 0;
let _: [(); 0] = #[rustc_dummy] [#![rustc_dummy] ];
let _ = #[rustc_dummy] [#![rustc_dummy] 0, 0];
let _ = #[rustc_dummy] [#![rustc_dummy] 0; 0];
let _ = #[rustc_dummy] foo();
let _ = #[rustc_dummy] 1i32.clone();
let _ = #[rustc_dummy] (#![rustc_dummy] );
let _ = #[rustc_dummy] (#![rustc_dummy] 0);
let _ = #[rustc_dummy] (#![rustc_dummy] 0,);
let _ = #[rustc_dummy] (#![rustc_dummy] 0, 0);
let _ = #[rustc_dummy] 0 + #[rustc_dummy] 0;
let _ = #[rustc_dummy] !0;
let _ = #[rustc_dummy] -0i32;
let _ = #[rustc_dummy] false;
let _ = #[rustc_dummy] 'c';
let _ = #[rustc_dummy] 0;
let _ = #[rustc_dummy] 0 as usize;
let _ =
#[rustc_dummy] while false {
#![rustc_dummy]
};
let _ =
#[rustc_dummy] while let None = Some(()) {
#![rustc_dummy]
};
let _ =
#[rustc_dummy] for _ in 0..0 {
#![rustc_dummy]
};
// FIXME: pp bug, two spaces after the loop
let _ =
#[rustc_dummy] loop {
#![rustc_dummy]
};
let _ =
#[rustc_dummy] match false {
#![rustc_dummy]
_ => (),
};
let _ = #[rustc_dummy] || #[rustc_dummy] ();
let _ = #[rustc_dummy] move || #[rustc_dummy] ();
let _ =
#[rustc_dummy] ||
{
#![rustc_dummy]
#[rustc_dummy]
()
};
let _ =
#[rustc_dummy] move ||
{
#![rustc_dummy]
#[rustc_dummy]
()
};
let _ =
#[rustc_dummy] {
#![rustc_dummy]
};
let _ =
#[rustc_dummy] {
#![rustc_dummy]
let _ = ();
};
let _ =
#[rustc_dummy] {
#![rustc_dummy]
let _ = ();
()
};
let mut x = 0;
let _ = #[rustc_dummy] x = 15;
let _ = #[rustc_dummy] x += 15;
let s = Foo{data: (),};
let _ = #[rustc_dummy] s.data;
let _ = (#[rustc_dummy] s).data;
let t = Bar(());
let _ = #[rustc_dummy] t.0;
let _ = (#[rustc_dummy] t).0;
let v = vec!(0);
let _ = #[rustc_dummy] v[0];
let _ = (#[rustc_dummy] v)[0];
let _ = #[rustc_dummy] 0..#[rustc_dummy] 0;
let _ = #[rustc_dummy] 0..;
let _ = #[rustc_dummy] (0..0);
let _ = #[rustc_dummy] (0..);
let _ = #[rustc_dummy] (..0);
let _ = #[rustc_dummy] (..);
let _: fn(&u32) -> u32 = #[rustc_dummy] std::clone::Clone::clone;
let _ = #[rustc_dummy] &0;
let _ = #[rustc_dummy] &mut 0;
let _ = #[rustc_dummy] &#[rustc_dummy] 0;
let _ = #[rustc_dummy] &mut #[rustc_dummy] 0;
// FIXME: pp bug, extra space after keyword?
while false { let _ = #[rustc_dummy] continue ; }
while true { let _ = #[rustc_dummy] break ; }
|| #[rustc_dummy] return;
let _ = #[rustc_dummy] expr_mac!();
let _ = #[rustc_dummy] expr_mac![];
let _ = #[rustc_dummy] expr_mac! { };
let _ = #[rustc_dummy] Foo{#![rustc_dummy] data: (),};
let _ = #[rustc_dummy] Foo{#![rustc_dummy] ..s};
let _ = #[rustc_dummy] Foo{#![rustc_dummy] data: (), ..s};
let _ = #[rustc_dummy] (#![rustc_dummy] 0);
}
fn _12() {
#[rustc_dummy]
let _ = 0;
#[rustc_dummy]
0;
#[rustc_dummy]
expr_mac!();
#[rustc_dummy]
{
#![rustc_dummy]
}
}
/////////////////
fn foo() { }
fn foo3(_: i32, _: (), _: ()) { }
fn qux(_: i32) { }