1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
#![feature(rustc_attrs)]
#[rustc_builtin_macro]
macro_rules! concat {
() => {{}};
}
fn main() {
let not_literal = "identifier";
concat!();
concat! (,); // { dg-error "expected expression, found .,." }
concat!(not_literal); // { dg-error "expected a literal" }
concat!("message");
concat!("message",);
concat!("message", 1, true, false, 1.0, 10usize, 2000u64);
concat!("message", 1, true, false, 1.0, 10usize, 2000u64,);
concat! ("m", not_literal); // { dg-error "expected a literal" }
concat!(not_literal invalid 'm' !!,); // { dg-error "expected token: .,." }
}
|